@@ -2,15 +2,24 @@ const chavy = init()
22const cookieName = '顺丰速运'
33const KEY_loginurl = 'chavy_loginurl_sfexpress'
44const KEY_loginheader = 'chavy_loginheader_sfexpress'
5+ const KEY_login27url = 'chavy_login27url_sfexpress'
6+ const KEY_login27header = 'chavy_login27header_sfexpress'
57
68const signinfo = { }
79let VAL_loginurl = chavy . getdata ( KEY_loginurl )
810let VAL_loginheader = chavy . getdata ( KEY_loginheader )
11+ let VAL_login27url = chavy . getdata ( KEY_login27url )
12+ let VAL_login27header = chavy . getdata ( KEY_login27header )
913
1014; ( sign = async ( ) => {
1115 chavy . log ( `🔔 ${ cookieName } ` )
1216 await loginapp ( )
1317 await signapp ( )
18+ if ( VAL_login27url && VAL_login27header ) {
19+ await loginapp27 ( )
20+ await signapp27 ( )
21+ await getinfo27 ( )
22+ }
1423 await getinfo ( )
1524 showmsg ( )
1625 chavy . done ( )
@@ -32,6 +41,22 @@ function loginapp() {
3241 } )
3342}
3443
44+ function loginapp27 ( ) {
45+ return new Promise ( ( resolve , reject ) => {
46+ const url = { url : VAL_login27url , headers : JSON . parse ( VAL_login27header ) }
47+ chavy . get ( url , ( error , response , data ) => {
48+ try {
49+ resolve ( )
50+ } catch ( e ) {
51+ chavy . msg ( cookieName , `登录结果: 失败 (27周年)` , `说明: ${ e } ` )
52+ chavy . log ( `❌ ${ cookieName } loginapp27 - 登录失败: ${ e } ` )
53+ chavy . log ( `❌ ${ cookieName } loginapp27 - response: ${ JSON . stringify ( response ) } ` )
54+ resolve ( )
55+ }
56+ } )
57+ } )
58+ }
59+
3560function signapp ( ) {
3661 return new Promise ( ( resolve , reject ) => {
3762 let url = { url : `https://sf-integral-sign-in.weixinjia.net/app/signin` , headers : JSON . parse ( VAL_loginheader ) }
@@ -60,6 +85,65 @@ function signapp() {
6085 } )
6186}
6287
88+ function signapp27 ( ) {
89+ return new Promise ( ( resolve , reject ) => {
90+ let url = { url : `https://mcs-mimp-web.sf-express.com/mcs-mimp/activity/sign` , headers : { } }
91+ delete url . headers [ 'Cookie' ]
92+ url . headers [ 'Accept' ] = 'application/json, text/plain, */*'
93+ url . headers [ 'Accept-Encoding' ] = 'gzip, deflate, br'
94+ url . headers [ 'Accept-Language' ] = 'zh-cn'
95+ url . headers [ 'Connection' ] = 'keep-alive'
96+ url . headers [ 'Content-Type' ] = 'application/json;charset=utf-8'
97+ url . headers [ 'Host' ] = 'mcs-mimp-web.sf-express.com'
98+ url . headers [ 'Origin' ] = 'https://mcs-mimp-web.sf-express.com'
99+ url . headers [ 'Referer' ] = 'https://mcs-mimp-web.sf-express.com/sfAnniversary'
100+ url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 mediaCode=SFEXPRESSAPP-iOS-ML'
101+ url . body = '{"channel": "SFAPP","secondChannel": "APP_HOME_ENTRY"}'
102+ chavy . post ( url , ( error , response , data ) => {
103+ try {
104+ chavy . log ( `❕ ${ cookieName } signapp27 - response: ${ JSON . stringify ( response ) } ` )
105+ signinfo . signapp27 = JSON . parse ( data )
106+ resolve ( )
107+ } catch ( e ) {
108+ chavy . msg ( cookieName , `签到结果: 失败 (27周年)` , `说明: ${ e } ` )
109+ chavy . log ( `❌ ${ cookieName } signapp27 - 签到失败: ${ e } ` )
110+ chavy . log ( `❌ ${ cookieName } signapp27 - response: ${ JSON . stringify ( response ) } ` )
111+ resolve ( )
112+ }
113+ } )
114+ } )
115+ }
116+
117+ function getinfo27 ( ) {
118+ return new Promise ( ( resolve , reject ) => {
119+ let url = { url : `https://mcs-mimp-web.sf-express.com/mcs-mimp/activity/sign/days` , headers : JSON . parse ( VAL_loginheader ) }
120+ delete url . headers [ 'Cookie' ]
121+ url . headers [ 'Accept' ] = 'application/json, text/plain, */*'
122+ url . headers [ 'Accept-Encoding' ] = 'gzip, deflate, br'
123+ url . headers [ 'Accept-Language' ] = 'zh-cn'
124+ url . headers [ 'Connection' ] = 'keep-alive'
125+ url . headers [ 'Content-Length' ] = '2'
126+ url . headers [ 'Content-Type' ] = 'application/json;charset=utf-8'
127+ url . headers [ 'Host' ] = 'mcs-mimp-web.sf-express.com'
128+ url . headers [ 'Origin' ] = 'https://mcs-mimp-web.sf-express.com'
129+ url . headers [ 'Referer' ] = 'https://mcs-mimp-web.sf-express.com/sfAnniversary'
130+ url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 mediaCode=SFEXPRESSAPP-iOS-ML'
131+ url . body = '{}'
132+ chavy . post ( url , ( error , response , data ) => {
133+ try {
134+ chavy . log ( `❕ ${ cookieName } getinfo27 - response: ${ JSON . stringify ( response ) } ` )
135+ signinfo . getinfo27 = JSON . parse ( data )
136+ resolve ( )
137+ } catch ( e ) {
138+ chavy . msg ( cookieName , `获取信息: 失败 (27周年)` , `说明: ${ e } ` )
139+ chavy . log ( `❌ ${ cookieName } getinfo27 - 获取信息: ${ e } ` )
140+ chavy . log ( `❌ ${ cookieName } getinfo27 - response: ${ JSON . stringify ( response ) } ` )
141+ resolve ( )
142+ }
143+ } )
144+ } )
145+ }
146+
63147function getinfo ( ) {
64148 return new Promise ( ( resolve , reject ) => {
65149 let url = { url : `https://sf-integral-sign-in.weixinjia.net/app/init` , headers : JSON . parse ( VAL_loginheader ) }
@@ -92,21 +176,44 @@ function showmsg() {
92176 let subTitle = ''
93177 let detail = ''
94178 if ( signinfo . signapp . code == 0 && signinfo . signapp . msg == 'success' ) {
95- subTitle = `签到结果 : 成功`
179+ subTitle = `签到 : 成功`
96180 } else if ( signinfo . signapp . code == - 1 ) {
97181 if ( signinfo . signapp . msg == 'ALREADY_CHECK' ) {
98- subTitle = `签到结果: 成功 (重复签到) `
182+ subTitle = `签到: 重复 `
99183 } else {
100- subTitle = `签到结果 : 失败`
184+ subTitle = `签到 : 失败`
101185 }
102186 } else {
103- subTitle = `签到结果 : 未知`
187+ subTitle = `签到 : 未知`
104188 detail = `说明: ${ signinfo . signapp . msg } `
105189 }
106190
107191 if ( signinfo . info && signinfo . info . code == 0 ) {
108192 detail = `积分: ${ signinfo . info . data . member_info . integral } , 本周连签: ${ signinfo . info . data . check_count } 天`
109193 }
194+
195+ if ( signinfo . signapp27 ) {
196+ subTitle += subTitle == '' ? '' : '; '
197+ if ( signinfo . signapp27 . success == true ) {
198+ subTitle += `周年: 成功 (+${ signinfo . signapp27 . obj } 积分)`
199+ } else if ( signinfo . signapp27 . success == false ) {
200+ if ( signinfo . signapp27 . errorCode == '200010' ) {
201+ subTitle += `签到: 重复`
202+ } else if ( signinfo . signapp27 . errorCode == '100111' ) {
203+ subTitle += `签到: 未登录`
204+ } else {
205+ subTitle += `签到: 失败`
206+ }
207+ } else {
208+ subTitle += `周年: 未知`
209+ detail += `说明: ${ signinfo . signapp . msg } `
210+ }
211+
212+ if ( signinfo . getinfo27 && signinfo . getinfo27 . success == true ) {
213+ detail += `, 周年连签: ${ signinfo . getinfo27 . obj . length } 天`
214+ }
215+ }
216+
110217 chavy . msg ( cookieName , subTitle , detail )
111218}
112219
0 commit comments