itunesAppsUnlock.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. /***********************************
  2. > ScriptName BuyiTunes多合一脚本[墨鱼版]
  3. > Author @ddgksf2021
  4. > ForHelp 若有屏蔽广告的需求,可公众号后台回复APP名称
  5. > WechatID 墨鱼手记
  6. > TgChannel https://t.me/ddgksf2021
  7. > Contribute https://t.me/ddgksf2021_bot
  8. > Feedback 📮 [email protected] 📮
  9. > UpdateTime 2024-02-23
  10. > Suitable 自行观看“# > ”注释内容,解锁是暂时的,购买也不是永久的[订阅、跑路]
  11. > Attention 如需引用请注明出处,谢谢合作!
  12. > Attention 使用此脚本,会导致AppleStore无法切换账户,解决方法[关闭QX切换账户,或关闭MITM,或删除脚本,或去设置媒体与购买项目处切换ID]
  13. > ScriptURL https://gist.githubusercontent.com/ddgksf2021/9e0f6c7341beea09a31aa309d9d7f502/raw/buyitunes.js
  14. # ========解锁列表======== #
  15. Cuttlefishの果果包
  16. https://appraven.net/collection/77331175
  17. [rewrite_local]
  18. # ~ BuyiTunes@ddgksf2021
  19. ^https?:\/\/buy\.itunes\.apple\.com\/verifyReceipt$ url script-response-body https://git.jojo21.top/shawenguan/Quantumult-X/raw/master/Scripts/itunes/itunesAppsUnlock.js
  20. [mitm]
  21. hostname = buy.itunes.apple.com
  22. ***********************************/
  23. let rspData = JSON.parse($response.body);
  24. // ========= 动态ID ========= //
  25. let productidmap = {
  26. 'default': ['ddgksf2021', 'https://t.me/ddgksf2021', 0],
  27. 'com.sugarmo.ScrollClip': ['picsewV3.9.4', 'com.sugarmo.ScrollClip.pro', 1],
  28. 'com.zijayrate.analogcam': ['oldroll', 'com.zijayrate.analogcam.vipforever10', 0],
  29. 'com.loveyouchenapps.knockout': ['proknockout', 'com.knockout.7daysplus', 0],
  30. 'net.shinyfrog.bear-iOS': ['bear', 'net.shinyfrog.bear_iOS.pro_yearly_subscription_bis', 0],
  31. 'com.yengshine.proccd': ['proccd', 'com.yengshine.proccd.year', 0],
  32. 'com.yumiteam.Kuki.ID': ['PicsLeap', 'com.yumiteam.Kuki.ID.4', 1],
  33. 'com.calc.iphone': ['Calculator', 'calc_Unlock_1', 0],
  34. 'me.imgbase.intolive': ['intolive', 'me.imgbase.intolive.proSubYearly', 0],
  35. 'MVH6DNU2ZP.input': ['logcg', 'com.logcg.loginput', 1],
  36. 'com.waterminder.waterminder': ['waterminder', 'waterminder.premiumYearly', 0],
  37. 'wtf.riedel.one-sec': ['onesec', 'wtf.riedel.one_sec.pro.annual.individual', 0],
  38. 'com.aaaalab.nepacket': ['http', 'com.li.blur.pro.month', 0],
  39. 'com.inturnex.Sticker-Maker': ['Sticker', 'com.inturnex.Sticker_Maker.full_access', 1],
  40. 'FuYuan.inkDiary': ['Secai', 'FuYuan.inkDiary.YearB.Pro', 0],
  41. 'me.imgbase.imgplay': ['imgplay', 'me.imgbase.imgplay.subscriptionYearly', 0],
  42. 'com.mediaeditor.video': ['PrettyUp', 'yearautorenew', 0],
  43. 'com.anycasesolutions.SexTracker': ['SexTracker', 'com.anycasesolutions.SexTracker.3mon', 0],
  44. 'com.jianili.pawff': ['pawff', 'com.jianili.pawff.pro.monthly', 0],
  45. 'icar.ren.smk': ['smk', 'smoke19870727', 0],
  46. 'com.meditation.heartratehrv': ['meditation', 'lifetimeusa', 1],
  47. 'livintis.com.wallpapermonster': ['wallpaper', 'wallpaperworld.subscription.yearly.12.notrial', 0],
  48. 'com.tianlang.gifmaker': ['gifmaker', 'com.tianlang.gifmaker.forever', 1],
  49. 'me.imgbase.videoday': ['videoday', 'me.imgbase.videoday.profeaturesYearly', 0],
  50. 'com.icandiapps.nightsky': ['nightsky', 'com.icandiapps.ns4.annual', 0],
  51. 'com.lixkit.diary': ['diary', 'com.lixkit.diary.permanent_68', 0],
  52. 'com.touchbits.subscriptions': ['dyt', 'com.touchbits.subscriptions.iap.pro.yearly', 0],
  53. 'dev.sanjin.WasteCat': ['cat', 'dev.sanjin.WasteCat.PermanentVip', 1],
  54. 'com.zerone.hidesktop': ['iscreen', 'com.zerone.hidesktop.forever', 0],
  55. 'co.bazaart.app': ['bazaart', 'Bazaart_Premium_Monthly_v9', 0],
  56. 'com.pollykann.app': ['pollykann', 'vip.forever.pollykann', 1]
  57. }
  58. // ========= 固定部分 ========= //
  59. rspData.Attention = "恭喜你抓到元数据!由墨鱼分享,请勿售卖或分享他人!";
  60. let mapid = rspData.receipt.bundle_id;
  61. mapping = productidmap[mapid] || productidmap.default;
  62. let inapp = {
  63. product_id: mapping[1],
  64. quantity: "1",
  65. expires_date: "2099-12-18 23:59:59 Etc/GMT",
  66. expires_date_pst: "2099-12-18 23:59:59 America/Los_Angeles",
  67. expires_date_ms: "4101292799000",
  68. is_in_intro_offer_period: "false",
  69. transaction_id: "100000000000000",
  70. is_trial_period: "false",
  71. original_transaction_id: "100000000000000",
  72. purchase_date_ms: "1701705599000",
  73. purchase_date: "2023-12-04 23:59:59 Etc/GMT",
  74. purchase_date_pst: "2023-12-04 23:59:59 America/Los_Angeles",
  75. original_purchase_date: "2023-12-04 23:59:59 Etc/GMT",
  76. original_purchase_date_pst: "2023-12-04 23:59:59 America/Los_Angeles",
  77. original_purchase_date_ms: "1701705599000",
  78. in_app_ownership_type: "PURCHASED",
  79. web_order_line_item_id: "100000000000000"
  80. };
  81. let renew = {
  82. product_id: mapping[1],
  83. original_transaction_id: "100000000000000",
  84. auto_renew_product_id: mapping[1],
  85. auto_renew_status: "1"
  86. };
  87. if (mapping[2]) {
  88. // 删除不必要的属性
  89. delete inapp.expires_date;
  90. delete inapp.expires_date_ms;
  91. delete inapp.expires_date_pst;
  92. } else {
  93. // 设置响应数据
  94. rspData.latest_receipt_info = [inapp];
  95. rspData.latest_receipt = "https://t.me/ddgksf2021";
  96. rspData.pending_renewal_info = [renew];
  97. }
  98. // 更新 receipt 的 in_app 属性
  99. rspData.receipt.in_app = [inapp];
  100. // 完成请求并返回结果
  101. console.log('操作成功🎉🎉🎉\nCuttlefishの自留地: https://t.me/ddgksf2021');
  102. $done({
  103. body: JSON.stringify(rspData)
  104. });