window.onload = function (_0xe315c8) { liff .init({ liffId: '1657715144-m4W6lyjL', // Use own liffId }) .then(() => { if (!liff.isLoggedIn()) { liff.login(); } else { getP(); } }); }; function getP() { var type = getParameterByName("type"); if (!type) { document.getElementById("textx").addEventListener("click", function () { const data = [{ type: "text", "text": atob("bGluZTovL2FwcC8xNTk5NzA2MzkxLVh3a0JMNzg5P3R5cGU9dGV4dCZ0ZXh0PVlvdXIlMjBUZXh0DQoNCnR5cGUgPT4gdGV4dA0KdGV4dCA9PiB5b3VyIHRleHQ=") }]; sendMessages(data); }); document.getElementById("imagex").addEventListener("click", function () { const data = [{ "type": "text", "text": ("line://app/1657715144-m4W6lyjL?type=image&img=https://wallpaperstudio10.com/static/wpdb/wallpapers/1000x563/168891.jpg\n\ntype => image\nimg => Link (must be HTTPS)") }]; sendMessages(data); }); document.getElementById("videox").addEventListener("click", function () { const data = [{ "type": "text", "text": ("line://app/1657715144-m4W6lyjL?type=video&ocu=https://tinyurl.com/y8og3or5&piu=https://images6.alphacoders.com/710/thumb-350-710132.png\n\ntype => video\nocu => video url\npiu => preview image") }]; sendMessages(data); }); document.getElementById("audiox").addEventListener("click", function () { const data = [{ "type": "text", "text": ("line://app/1657715144-m4W6lyjL?type=audio&link=https://platelets.fun/public/sounds/music.mp3") }]; sendMessages(data); }); document.getElementById("stickerx").addEventListener("click", function () { const data = [{ "type": "text", "text": ("With Animation:\nline://app/1657715144-m4W6lyjL?type=sticker&stk=anim&sid=32128231&pkg=3099312\n\nNo Animation:\nline://app/1657715144-m4W6lyjL?type=sticker&stk=noanim&sid=32128231&pkg=3099312\n\ntype => sticker\nstk => anim / noanim\nsid => sticker id\npkg => packages id") }]; sendMessages(data); }); } else { makeText(); makeImage(); makeVideo(); makeAudio(); makeSticker(); meProfile(); } } function getParameterByName(stringParam, window_href) { const URLscheme = {}; let urlsearch = window.location.search; if (urlsearch.indexOf("?") !== -1) { let str = urlsearch.substring(1); let strs = str.split("&"); for (let i = 0; i < strs.length; i++) { URLscheme[strs[i].split("=")[0]] = decodeURIComponent(strs[i].split("=")[1]); } } return URLscheme[stringParam]; } function getProfile() { liff.getProfile().then(function (data) { document.getElementById("userid").textContent = "Hai " + data.displayName; document.getElementById("main").src = data.pictureUrl; document.getElementById("close").addEventListener("click", function () { liff.closeWindow(); }); }); } function makeText() { var type = getParameterByName("type"); if (type === "text") { const data = [{ "type": "text", "text": getParameterByName("text") }]; sendMessages(data); } } function makeImage() { var type = getParameterByName("type"); if (type === "image") { const data = [{ "type": "image", "originalContentUrl": getParameterByName("img"), "previewImageUrl": getParameterByName("img") }]; sendMessages(data); } } function makeVideo() { var type = getParameterByName("type"); if (type === "video") { const data = [{ "type": "video", "originalContentUrl": getParameterByName("ocu"), "previewImageUrl": getParameterByName("piu") }]; sendMessages(data); } } function makeAudio() { var type = getParameterByName("type"); if (type === "audio") { const data = [{ "type": "audio", "originalContentUrl": getParameterByName("link"), "duration": 60000 }]; sendMessages(data); } } function makeSticker() { var type = getParameterByName("type"); if (type === "sticker") { var stk = getParameterByName("stk"); var sid = getParameterByName("sid"); var pkg = getParameterByName("pkg"); var pngtype = ""; if (stk === "anim") { pngtype = "/IOS/sticker_animation@2x.png"; } else { pngtype = "/IOS/sticker@2x.png"; } const data = [{ "type": "template", "altText": "Sticker", "template": { "type": "image_carousel", "columns": [{ "imageUrl": "https://stickershop.line-scdn.net/stickershop/v1/sticker/" + sid + pngtype, "action": { "type": "uri", "uri": "line://shop/sticker/detail/" + pkg } }] } }]; sendMessages(data); } } function meProfile() { var type = getParameterByName("type"); liff.getProfile().then(function (data) { var statusMessage = data.statusMessage; if (statusMessage == null) { var statusMessage = ""; } if (statusMessage.length > 60) { var statusMessage = "Status Message is to long! Max 60 words"; } if (type === "profile") { const data = [{ "type": "template", "altText": "Profile " + data.displayName, "template": { "type": "buttons", "thumbnailImageUrl": data.pictureUrl, "imageAspectRatio": "square", "imageSize": "cover", "title": data.displayName, "text": statusMessage, "actions": [{ "type": "uri", "label": "Me", "uri": "line://app/1657715144-m4W6lyjL?type=profile" }] } }]; sendMessages(data); } }); } function sendMessages(data) { if (liff.isInClient()) { liff.sendMessages(data).then(function () { liff.closeWindow(); }).catch(function (error) { console.error(`[Line] textx: ${error}`); document.getElementById("error").innerHTML = `[Line] textx: ${error}`; }); } else { if (liff.isApiAvailable("shareTargetPicker")) { liff.shareTargetPicker(data).then(function (res) { liff.closeWindow(); }).catch(function (error) { console.error(`[Line] textx: ${error}`); document.getElementById("error").innerHTML = `[Line] textx: ${error}`; }); } else { document.getElementById("error").innerHTML = `你的 LINE App 暫時不支援 Share Target Picker`; } } }