51

Re: AHK: Internet Explorer Platform APIs

Malcev пишет:

После отправки не нажимай сразу OK, а отправь какие-нибудь сообщения через броузер и после нажатия ок ты их получишь.

Обычное сообщение приходит обратно, а как получить все в чате, или как получить весь хтмл, как он в браузере отображается.

Malcev пишет:

Команда /showmembers, как я понял обращается напрямую к js-движку, так что наверное можно попробовать проверять различные запросы

Ни в одном не нашёл.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

52

Re: AHK: Internet Explorer Platform APIs

Хтмл, думаю, никак.
Не понимаю, что ты хочешь получить?

53

Re: AHK: Internet Explorer Platform APIs

Кстати, апи там расписан.
https://skpy.t.allofti.me/protocol/chat.html
Остальное дело техники.

54

Re: AHK: Internet Explorer Platform APIs

Дело техники для технарей, не для меня.

Malcev пишет:

Не понимаю, что ты хочешь получить?

Как получить список всех участников чата, и как получить список сообщений в чате?

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

55

Re: AHK: Internet Explorer Platform APIs

Без пристального изучения апи вряд ли что-то путное выйдет.
Например пишут:

Warning
If you make too many authentication attempts, you may become temporarily rate limited by the Skype API, or be required to complete a captcha to continue. For the latter, this needs to be done in a browser with a matching IP address.
To avoid this, you should reuse the Skype token where possible. A token will usually only last for 24 hours (even web.skype.com forces re-authentication after that time), though you can check the expiry with SkypeConnection.tokenExpiry.

https://skpy.t.allofti.me/usage.html
Как получать сообщения я уже писал.
Пользователей у меня так получает:

HTTP.Open("GET", "https://client-s.gateway.messenger.live.com/v1/threads/" threadId "?view=msnp24Equivalent", true)
HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko)")
HTTP.SetRequestHeader("Pragma", "no-cache")
HTTP.SetRequestHeader("Cache-Control", "no-cache, no-store")
HTTP.SetRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT")
HTTP.setRequestHeader("RegistrationToken", "registrationToken=" registrationToken)
HTTP.send()
HTTP.WaitForResponse()
msgbox % clipboard := http.responsetext

56

Re: AHK: Internet Explorer Platform APIs

Я так пытался, откуда ты взял "?view=msnp24Equivalent", в Group conversations написано только GET https://client-s.gateway.messenger.live.com/v1/threads/(string: id).


HTTP.Open("GET", "https://client-s.gateway.messenger.live.com/v1/threads/" threadId, true)
HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko)")
HTTP.SetRequestHeader("Pragma", "no-cache")
HTTP.SetRequestHeader("Cache-Control", "no-cache, no-store")
HTTP.SetRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT")
HTTP.setRequestHeader("Content-Type", "application/json")
HTTP.setRequestHeader("csrf_token", csrf_token)
HTTP.setRequestHeader("Authentication", "skypetoken=" skypetoken)
HTTP.setRequestHeader("RegistrationToken", "registrationToken=" registrationToken)
HTTP.send()
HTTP.WaitForResponse()
msgbox % http.responsetext
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

57

Re: AHK: Internet Explorer Platform APIs

Я тоже, но сервер прислал ответ, что:

{"errorCode":201,"message":"\"view\" query string parameter must be provided"}

Из чего сделал вывод, что серверу нужно указать параметр view, значение которого указано в других запросах.

58

Re: AHK: Internet Explorer Platform APIs

А как получить полную инфу про контакт, в массиве есть id контакта.
https://skpy.t.allofti.me/protocol/cont … d)-profile

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

59

Re: AHK: Internet Explorer Platform APIs

Не знаю. Я как гость захожу - у меня нету списка контактов.

60

Re: AHK: Internet Explorer Platform APIs

Думал что данные чужого профиля может получить не только регистрированный пользователь.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

61

Re: AHK: Internet Explorer Platform APIs

Там же написано:

The current user is only authorised to request information for users in their contact list

62

Re: AHK: Internet Explorer Platform APIs

Да, точно. Может userLink что то даёт, надо получить хотя бы display_name контакта.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

63

Re: AHK: Internet Explorer Platform APIs

Вот тут обсуждаются различные способы получения информации о контактах.
https://github.com/ocilo/skype-http/issues/20

64

Re: AHK: Internet Explorer Platform APIs

Warning
If you make too many authentication attempts, you may become temporarily rate limited by the Skype API, or be required to complete a captcha to continue. For the latter, this needs to be done in a browser with a matching IP address.
To avoid this, you should reuse the Skype token where possible. A token will usually only last for 24 hours (even web.skype.com forces re-authentication after that time), though you can check the expiry with SkypeConnection.tokenExpiry.

Вообщем как ты и говорил упёрлось в истечение токена после сотни "заходов в гости", помогает смена айпи адреса, или подождать минут пять (кажется не всегда помогает).
Там примеры все на питоне, так понял что и библиотека только для питона существует. Смысл в том что надо постоянно проверять tokenExpiry и выполнять повторную аутентификацию?, но с HTTP такого не видел.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

65

Re: AHK: Internet Explorer Platform APIs

Там на питоне те же самые http запросы.
Они, как я понял, этот апи сами через сниффер писали, так как официального нету.
Token на сутки дают, так что можно не проверять каждый заход.
Просто сохрани токен и используй его при каждом новом запросе.
Можешь посмотреть, что отправляет IE во время логина-логаута разных чатов и повторить тоже самое.

66 (изменено: serzh82saratov, 2018-01-17 02:34:54)

Re: AHK: Internet Explorer Platform APIs

Этот в каждом запросе?


HTTP.SetRequestHeader("csrf_token", csrf_token)

или

HTTP.SetRequestHeader("Authentication", "skypetoken=" skypetoken)
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

67

Re: AHK: Internet Explorer Platform APIs

У меня нету таких в каждом запросе.
Сотри весь кеш, и начни записывать свои действия через IE.
Залогинься в 1 чате, отправь сообщение, залогинься во втором чате, отправь сообщение.
И потом изучаешь какие запросы были посланы при логине и отправки сообщения во второй чат.

68 (изменено: serzh82saratov, 2018-01-17 20:01:39)

Re: AHK: Internet Explorer Platform APIs

Ты имеешь ввиду, что сейчас в заголовках что то не отправляется?
Я из Warning так понял что некий токен не надо обновлять в пределах периода его действия. Предположил что надо skypetoken получать только один раз, но нет (статус 403 при следующем заходе в другой чат).
Сейчас при каждом запросе (входе в новый чат) все токены и.т.п. получаются заново. Вроде как и в браузере при входе в новый чат всё это дело тоже обновляется, и могу сказать точно, что примерно при 250 заходах в течении 3 - 5 минут из нескольких браузеров, IP адрес банится, так что в браузере можно и не увидеть решение. При 100 - 110 заходах через HTTPRequest из нескольких процессов течении 1 - 1.5 минут тоже бан.

Отправка сообщений никак не влияет на бан, сейчас тестирую - зашёл гостем в чат - получил список участников - вышел.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

69

Re: AHK: Internet Explorer Platform APIs

Я один раз получаю token в https://join.skype.com/api/v1/users/guests.
После этого он у меня во всех чатах только посылается, либо в хедере либо в боди.
Если в броузере тебя банят по айпи, то и через winhttp точно также банить будут, только, наверное, при  постоянном запросе токена быстрее.

70 (изменено: serzh82saratov, 2018-01-18 00:39:12)

Re: AHK: Internet Explorer Platform APIs

Тогда не пойму где у меня ошибка, какой то запрос лишний?
Вроде об одном говорим, но на второй ссылке и далее ошибка - 403.
Если в if !start вместо start написать if true, то у меня работает.
Если Debug  = 0 и оставить работать, то покажет на какой ссылке бан.


#SingleInstance Force
#NoEnv 
  
OnExit, ExitApp 
Global Debug, HTTP, GuestName, Script, Step

GuestName = GuestMuest

Debug := 1

htmldoc := ComObjCreate("htmlfile")
Script := htmldoc.Script
Script.execScript(" ", "JScript")

HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")

; ComObjError(false)

Chats = pCNsoYURMAq0|aKLrwYnxcmG1|A2gtoEAl3CUB|m9FV2t2Sn4pJ|jH0VBIsFNP3m|jHvcFCix6fo4|jIYK7ku8pREf|jIjMtgoVGnDA|jKnF6j5QvDlh|jLF1o9qB81tz|jMfGNxQcqrf2|jN0fQJdKFuwG|jPatxd9BrOiv|jRKJ87IqNPlC|jSQlGYDKN6d3|jSgPUHBhFXg2|jTFnFBjyyuws|jUASyemGxz5b|jV3USvobfZf7|jVtZNPfBmVeB|jXAv9Ut6yQ1O|jXeLtbzT0bvB|jXz0OFJ7Zq4d|jZKKlUsWUvUq|jZmZWDQPHyDp|jcGK2TqThART|jcoD6cfqyUFt|jdAXhaxdO5fa|jdk8FB15pFpm|jePRX7SD8mbq|jeUyLXAhe7dk|jfAtvzCtZA6n|jfJeM0uX5eya|jg72h1XivK8t|jgQzRaIxuv3d|jgvXbPe4JJhm|jhTLH5vvJGXR|jiiAreTYgCNc|jjLQ9vDFPl4a|jjPoHZFzhwAR|jkrRO74XgKuX|jnh35Rjxi8EK|jpKadI9JXUIb|jpVtqUyzPJW1|jqVKNtBJfvLo|jrbYrxAAkmjh|jsvOMSdMA03o|jtYb0TYKt4jX|juyTbgQ4Tu8V|jwPqEhe33UGl|jwR523XOHkNa|jxEmBoORbZNH|k15dhTfO7aRz|k5oXtdNB1hj0|k6Bn9TQclvPg|k7AyVvel3zj5|k7PqxtWeXah5|k9iWHf3Qhfmp|kC59p6UNgarR|kJFUGp3ph8k5|kJKn1zUnDxhe|kJkGYFfx7lBt|kLYw93QJ9XAz|kM6uqGsndIhT|kMxAD08O4bBK|kPbt2OPr2hb3|kQoEEJE6uLLr|kQqfb7nRYv62|kRWp2fskNPWy|kRq0bxN6ilH2|kSSwsKlmnC01|kSidlLhiuIDe|kTsXuBhmeier|kUfqrgctqKc1|kWdeekhWiBAH|kbxGTKKv2VFO|kc1Dnr5SM6Xt|kdtB1QxmErDr|kdzqjiWpKRAt|kedtpEjUiAnv|kf23K4wGskrn|kgXB8ovoJS2c|kgxzVWfFvOmT|khYfTqwNh0wG|ki6OeXfXp1JN|kjOWKKAZMyQr|kjSiWaFP9DdL|kjhDiVjgT3KT|klVzZySxiBe8|km8cgz3hKhGr|kmg3z6hz8Bhp|kmvvgJHV0PYC|ko9sm515zTRK|kofsSdZXTeOn|kp76fJCeNXci|krvA4lxYJz93|ksLgtnJxgNzo|ksvQbfQaI2zh|ktZAdGDiu8uD|kudNuzSMxj1t|kuvhUELDruDx|kvHNo6bGM2L3|kw7stiqhiaVb|kx2dsmpUXawS|kxCJ2RqvuqCu|kzvoe7twcz2F|l0OfPJcLgslP|l1YckSCaAr4a|l2iq5NnB6AIi|l3GUzdbl8XIF|l4DFbTbAcA0Q|l4yMSei95hET|l6r9R1cU26pu|l984HjIsdzhf|l98AAYVIrScG|l9JHUwYDW0k9|lBVgdtg7RvPZ|lBqKwpqc6R5h|lC7WBzDMdKa4|lEDETfxA9uqu|lGmnXwv7HCqt|lHctwvWmxkVp|lITdImCDjbWp|lJFZBlfqCJaz|lJfxsucJaXhm|lLAj4qsKpu9n|lM9BkT1xnJTZ|lMeUcZdKhYZ0|lMlOOdejwlGz|lMr7BynO55NH|lOyTKo5iEhFI|lPpEnjs0Momi|lQCuNQ5bKdt1|lQEIyj30OhBe|lR7YVK3Xg33O|lR8gGsASUxaU|lRxI0wuXz7jU|lUKmd0PqtNyK|lUSCSMth7soB|lXg2JzJexIqx|lXz56a0AjRrI|lb4rb0dBYAt5|lbHa9ozN7X5i|lbcyBCT4dvLJ|lcZzkt9oMek8|lcxzA6FOBAUs|le4Qf0mrJKa2|lekGpuLfvPPO|lexuFQhqtsQs|lfVbuglt4ueB|lhjnz13R0QdU|li67o13EKtgs|liYqhiOtrzG5|lkhWKylflG1L|llWg6Xcy3K6e|lmNpUaen4gDz|lmZetQeCzSTS|lo8eltiCtthD|loSi6rg9kY3C|logzoxTDnjxc|lpwDX02rJVm2|ltEjl00ZMtGW|lvkdUawoZeaK|lw9nCgU7PfN2|lx3uj1KhF4wU|lyCqWQdssqjw|m1Dt7UCKH31k|m1H0cpmy164d|m1yK82J3jaCG|m2hCBBkbKHgo|m3JuEtAFEZko|m4k9Upctdgsc|m7GKANdAVPiN|m7Jmo3iJodLP|m7NFwljOSXjw|m7X3aduov61u|m7vanepvzUrC|m8QkJIjUYyaZ|m99qVyvgo8Ak|m9nJbk7syYhb|m9y6rpxqvIet|mBX6K1Pv4YiG|mDyfhSzz1amx|mEHRzvgrWIx8|mELeGZrKo1VY|mEuAqrjITywZ|mEuDaxSPREwn|mFvaGI1La9N8|mGN1Xc4utQV6|mGh4ha1nPTC2|mGzIEzAdfYjb|mIgpQysOHQ7T|mIrfs4wXQf8L|mL9OdcKwNz3X|mNZ1kjICWQTG|mPX14iEv7kDC|mPZNQWQFPAe|mR2BxZXwqn4C|mReUeeXri2tx|mRxocPLCVb9q|mSCf6d9exPeX|mTNAve0Y4Pgn|mTxBRC3iX5zi|mU8pEbjwjzLb|mUbar08KM7mh|mVGeBpQP4SpH|mWGWFicmi1Ve|mXuVKbExe5cC|mZPOYA9kPMff|mZnV3teerrf1|mbA9WYHQxd80|mbUGs7G7TYWE|mcSzA4cAGN2T|mcSzA4cAGN2TJ|mdZYlduUMFJW|mdjgsr1DJthQ|meZjav0PoTeP|mfOxbe07PVf8|mfpOryGxzAem|miJAv6IlnrE6|miWo5rGbnZl6|miodOfIeyZOb|mitdMkVgaTog|ml2uk9gqF1ej|mlP62jGlymDP|modgtNRLNWGt|mqpIyuVFFzl7|mqwIdLWEID9J|msdOXmlrIgSx|msicKQHuK7ri|mszvCgDlbBM8|mtPDw6KfjPCu|mwPu3JW1mGCK|my5AXuzsFgtV|myaGMyj5V8EW|mzTker8SyfEW|n16hMKKKJNp3|n3x5Z9N1EoAN|n4GKtdNxZwp8|n5bMCdt7g9mR|n5t4KEigaZTC|n7fPDSma4wwU|n8EcixFEho8t|nAlgUlFGVkjn|nDHgRVZKmePo|nFPVGAnkknqj|nGW1O4Q6JgbB|nIXrLJJEs3g0|nNkm5m0adShb|nRxAIFPjs2DG|nSh3KBHfvz3F|nTg2cMq4VxJC|nV9sDbmGe50s|nYeNCq3NgLhN|nYuuYK6BjU68|nZJNdKg6VG8d|nbKOr1oyuXyc|ncUlttCsxCW7|ncZVKbIYYf3O|nd0rHDZGAbcf|nfYPeiBGZQjk|ngZFNHOK1lb9|nhRfTZzttQEd|njxJ2G6xouda|nqCNkkqPWPbd|nrR2GzHb81x5|nrl0c56n7XB7|nu74AW2rZOkj|nv104JC9gv0n|nw4RxT4839rB|nwVZ2WdDvi8B|nzRqGsAB9Axc|o263QHX4CEbt|o34jg2nTXxOW|o38nux5ejFj6|o5BeJijZ89vG|o6dgLv6YlIDu|o7DlohezvgE2|o8yqyB9TwrxY|o99SgKObtfGI|o9V025Qg81na|oAxufjx6FQWG|oBFVqcN5JbP5|oBVUNc0a3Cuu|oCUDF5gNx9Td|oD6noBNMuvlW|oDA1NCEaxKwp|oEb7W3eG79z3|oGFpgdhi9OG3|oHj1O1OhmHVB|oKvD53LVCAX8|oMF7Iq0CMNCS|oMIvgTJ8tfPa|oMzUHaSSCEg4|oNExvtrf9Dtv|oP42LWd46PRQ|oPDcgBIGuIQu|oRztHr4wMUoc|oT2zS5VRQZgM|oTNaLaQ1jrNv|oUnS77caxmtD|oUz1ouSR45f9|oV7lktzx1jPY|oWYoStejrXTu|oXZ1UuEXAdN5|oZTZSlufnl1h|oZWK7gSTLRh8|oa1RfLcx99uX|oah4HCxWXznc|oaivv9IBHw16|oay0M2II4caT|oc4vJypK2abV|oci4aaWfc3v|oecNnCmTCbzr|ojjwLMKd4jVH|oklP3D0d8SqV|okw6DFGlogmj|oljVEvbJFqSi|omgUgvk5S3la|on7PVJf6K7Ih|onNfqVaWH43E|onVjzJeb6oU9|oppbxEM5pi7S|oqaXh8uENgOr|orcvmzvTA5mv|ot50FYRhw6Km|ovXxEhA34FVe|owYtfjcLdA2o|oy8aY5Cq1W1b|ozSSRk1y4G4q|ozTuorCAJNJF|ozzw4MK7TVyy|p18SbE7KdPDX|p1Ew4EjxXpbV|p2AqRFgHAXSR|p2Mm0XTWnbQ7|p3bcpML02yg5|p5DXn0PxD7Zt|p5eTgKjA3BGb|p7qhrjTVikwU|p9gfvhluEt3B|pAGsMiR3QUDL|pBG7kAnLj4nT|pBoMtSTwGvDQ|pCjmdadPnWnT|pCkcihiqszys|pCxWcHMIPq9R|pG3RFi8fTVeM|pGM6aafazJpO|pHFFQMYrEcF6|pHibo8cw8pQa|pI7hRLos9FUk|pIKqIowb3902|pMxtW2UabidU|pNs3jhEdSCfK|pNuKcxUtnh0N|pOUkjlA4ODqF|pObPYMYNtyhz|pOkLWyNkPQX2|pPErz2tba4eK|pRE19GLvU0bv|pSGmx8aS7JKG|pSg0KOXleSWp|pVYiOTxv77A1|pZmKbhbndLaL|pbkPgmgAle2q|pbyjFbaUvWwZ|pcGrcB8T3WtB|pcYGKBdWYmL1|pcw036cfDE9S|pevb3wCc0IRy|pkasMkvC78Co|pmI3LpncARNM|pnUKRQKrIwqo|pnxvkMNeBto2|pvNAeqJlAEWh|pwVhw2XQuajX|px5J5Uubc1jV|pyBaDN4PU1RL|pyqMsma2hqXN|qnZlemxOXgtD|rAhsGEJf2uJc|rFQMFoNAclJI|re5cMs3TU2oz|rpslCNe7GGJ1|sJpUv3zIqupk|sdlbsHWFeNlB|soAfFkkmEiEi|t9KgNAIgPnWK|tDxJnxEc3UbH|tge1DqfVsKgT|uJsSDX06cpBH|uNAZR940JXv1|uRcLjKZT7xyK|vDK7AjHPorVh|vpS6La7175Ix|wDkTyblfro4K|wJ0XBUNKF6fY|wJeC9LIotY0l|wKTLocwnBjCk|wT1Df94fey2P|xH0akv0UL43N|xPenu0bzdouB|xr5GEIQOVq80|y46xSP7byKJr|yTcRRxMllc95|zKQXpWOF7BLJ|zhAh66teGkGd|zjxH1wSFnLIK|zk7unPOIZGjv|zrdX2PfRgLlf|zuyW8sC8aR8q|orlaASiXyumc|ndEa7lIsZcu7|hOem1ANTAQ3e|bP6tGs7v1GNE|kHPXTUlAcKot|czIdk3D45PdW|gfGb7pmwu2bB|cIpji1Kutf0d|c258c1UmjHZt|oO7ByneOs3Yh|noMBVg18bKLJ|oFKbhE2wsw8S|lCJFKGrLorMv|pRGbKEk8IYyN|arixZiNz2D85|iN5cHpGYSy01|kOcymW1pEWou|fVIAtgWfvszw|oBqoKemBhrdI|dtr362L2N5k1|g4A7l0Bx13mv|pVi564BkhVJb|omV4UOeKae9U|nwy39gzhd6Yp|kDAYIm1bj2su|e3XQ3cVzwBNp|cSCDw1ItgwQS|yviKLixtDIeo|AHVMp4xREw5s|oa7MhjultoLb|lfaInW01ZQLS|riGjW9ZrrmAJ|taYfYhFJeteN|bXaz31lFBuEM|itI1ZMjDcS8e|dW7e44XrNzr3|pZSHjvypU52w|a1BnsF21nAX9|e067xrFdHmuK|FRWsWFpVkcs9|v7CiKCXwJrV6|QiuNCWBpzfTG|tneoKzbyyMeS|loRcwaBgCjBc|m09wtxjntfBQ|ddcyzmzkqVB8|faKNZdsvVFTU|gispZiM0VmHo|mEwGOe7Ebkws|oiemjZkQYwNF|pZxNoetgBEek|dvUvBecbC7e1|gJVdB7aI7yL6|det1daq80qgx|eAnz7JCw3RAp|lIXSNFiLqXx7

Loop, Parse, Chats, |
{
	Step := A_Index
	Error := Func(A_LoopField)
	If Error = 2
		msgbox, 4112, , "Ссылка нoмер: " Step "`nСменить айпи"
	Sleep 100
}
msgbox, 4112, , "Завершено: " Step
ExitApp

Func(id) {
	static start, skypetoken, csrf_token, threadId, longId
	
	HTTP.Open("GET", "https://join.skype.com/" id, true)
	SetDefaultHeader()
	If send() 
		Return Error(id, A_LineNumber)
	GetAllResponseHeaders := HTTP.GetAllResponseHeaders()
	launcher_session_id := RegexReplace(GetAllResponseHeaders, "s)^.*Set-Cookie: launcher_session_id=(.+?);.*$", "$1")
	csrf_token := RegexReplace(GetAllResponseHeaders, "s)^.*Set-Cookie: csrf_token=(.+?);.*$", "$1")
	
	HTTP.Open("POST", "https://join.skype.com/api/v2/conversation", true)
	SetDefaultHeader()
	If send("{""shortId"":""" id """,""type"":""wl""}") 
		Return Error(id, A_LineNumber)  
	ResponseText := HTTP.ResponseText
	threadId := RegexReplace(ResponseText, "s)^\{""Resource"":""(.+?)"".*$", "$1")
	longId := RegexReplace(ResponseText, "s)^.*,""Id"":""(.+?)"".*$", "$1")

	if !start
	{
		HTTP.Open("POST", "https://join.skype.com/api/v1/users/guests", true)
		SetDefaultHeader()
		HTTP.SetRequestHeader("csrf_token", csrf_token)
		If send("{""name"":""" GuestName """,""threadId"":""" threadId """,""shortId"":""" id """,""longId"":""" longId """,""flowId"":""" launcher_session_id """}") 
			Return Error(id, A_LineNumber)  
		skypetoken := RegexReplace(HTTP.ResponseText, "s)^.*\{""skypetoken"":""(.+?)"".*$", "$1")
		start := 1
	}
	Else
	{
		HTTP.Open("POST", "https://join.skype.com/api/v1/users/guests", true)
		SetDefaultHeader()
		HTTP.SetRequestHeader("csrf_token", csrf_token)
		If send("{""name"":""" GuestName """,""threadId"":""" threadId """,""shortId"":""" id """,""longId"":""" longId """,""flowId"":""" launcher_session_id """}") 
			Return Error(id, A_LineNumber)   
	}
	
	; MsgBox % GetAllResponseHeaders "`n`n" Script.eval("(" . HTTP.ResponseText . ")").skypetoken "`n`n" skypetoken

	HTTP.Open("POST", "https://client-s.gateway.messenger.live.com/v1/users/ME/endpoints", true)
	SetDefaultHeader()
	HTTP.SetRequestHeader("Authentication", "skypetoken=" skypetoken)
	If send("{""endpointFeatures"":""Agent""}") 
		Return Error(id, A_LineNumber)  
	registrationToken := RegexReplace(HTTP.GetAllResponseHeaders(), "s)^.*Set-RegistrationToken: registrationToken=(.+?);.*$", "$1")

	HTTP.Open("GET", "https://client-s.gateway.messenger.live.com/v1/threads/" threadId "?view=msnp24Equivalent", true)
	SetDefaultHeader()
	HTTP.SetRequestHeader("RegistrationToken", "registrationToken=" registrationToken)
	If send() 
		Return Error(id, A_LineNumber)
	JSON := HTTP.ResponseText
	oJSON := Script.eval("(" . JSON . ")")      ; topic :=  oJSON.properties.topic  ;	 "`n" oJSON.properties.creator
	topic :=  oJSON.properties.topic
	oJSON := Script.eval(oJSON.members)
	Loop % oJSON.length
	{
		str := oJSON[A_Index-1].id
		if !instr(str, ":guest:")
			list .= RegExReplace(str, "i)^8:", "", , 1) "`n"
	}
	if Debug
		MsgBox % "Ссылка нoмер: " Step "`n" topic "`n" list
	
	; SendMessage("text", name, registrationToken, threadId)
	
	; Exit
	; HTTP.Open("GET", "https://join.skype.com/guests/leave?threadId=" threadId, true)
	; send() 
	Return 0
} 

send(body = "") {
	HTTP.send(body) 
	HTTP.WaitForResponse()
	Status := HTTP.Status
	If (Status != 201 && Status != 200) 
		Return 1
	Return 0
}

SetDefaultHeader() {
	HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko)")
	HTTP.SetRequestHeader("Pragma", "no-cache")
	HTTP.SetRequestHeader("Cache-Control", "no-cache, no-store")
	HTTP.SetRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT")
	HTTP.SetRequestHeader("Content-Type", "application/json")
}

SendMessage(message, name, registrationToken, threadId) {
	now := A_NowUTC
	EnvSub, now, 1970, seconds
	now .= A_MSec
	HTTP.Open("POST", "https://client-s.gateway.messenger.live.com/v1/users/ME/conversations/" threadId "/messages", true)
	HTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko)")
	HTTP.SetRequestHeader("Pragma", "no-cache")
	HTTP.SetRequestHeader("Cache-Control", "no-cache, no-store")
	HTTP.SetRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT")
	HTTP.SetRequestHeader("Content-Type", "application/json")
	HTTP.SetRequestHeader("RegistrationToken", "registrationToken=" registrationToken)
	body = {"content":"%message%","messagetype":"RichText","contenttype":"text/html","Has-Mentions":"false","imdisplayname":"%name%","clientmessageid":"%now%"}
	HTTP.send(body)
	HTTP.WaitForResponse()
}

ExitApp:
	HTTP := ""
	OnExit
	ExitApp 
	
Error(str, Line="") {
	If Debug
		msgbox, 4112, , % "Ссылка нoмер: " Step "`n" str "`n" Line "`n" HTTP.Status "`n" HTTP.StatusText "`n" HTTP.Option(1) "`n" HTTP.GetAllResponseHeaders() "`n" HTTP.ResponseText
	If (HTTP.Status = 429 || HTTP.Status = 503)
		Return 2
	Return 1
}
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

71 (изменено: serzh82saratov, 2018-01-18 01:14:43)

Re: AHK: Internet Explorer Platform APIs

Malcev пишет:

Если в броузере тебя банят по айпи, то и через winhttp точно также банить будут, только, наверное, при  постоянном запросе токена быстрее.

Так в броузере может и банят из за запроса токена, потому что судя по всему он его обновляет при заходе в новый чат.
В питоновской библиотеке так понял всегда при подключении проверяется tokenExpiry в conn.py, по поиску в блокноте Expiry ещё в client.py есть, но по какому запросу оно там работает не разберёшь конечно.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

72 (изменено: Malcev, 2018-01-18 02:17:05)

Re: AHK: Internet Explorer Platform APIs

У меня при открытии второго чата https://join.skype.com/m9FV2t2Sn4pJ в кукисы сразу же прописывается инфа полученная ранее:

Cookie csrf_token=1aa5ae1***; MSFPC=GUID=789e7b06cb*****2a2ff24d78d6b5b54&HASH=7***e&LV=20**801&V=**4&LU=1**661432; guest_token_19%3Ae34***76bc4de1ba1de79a71%40thread.skype=lhfs1fBMb*****jZ4j_6H2LGIPtzd27QVHiFtgVFFMVf8pnPwkviSlFIWAQAAAAkwMTk6ZTM0N2ZhNDk1OWZmNGY3NmJjNGRlMWJhMWRlNzlhNzFAdGhyZWFkLnNreXBlLgFPAnGAyPSlCwA%3AeyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZ****IjEzIn0.eyJpYXQiOjE1MTYyMjY0NDIsImV4cCI6MTUxNjMxMjg0Miwic2t5cGVpZCI6Imd1ZXN0OnRlc3RfMDRjMGQxZDYiLCJzY3AiOjc4MiwiY3NpIjoiMTUxNjIyNjQ0MiJ9.U0SasQM5yYfYo3viRqHAlPintiPWCdEhkOThNRagHuafV7p41YnK_er6MGSZsOwHqjjfT8Kj-Akw2SoLcYCOV1ra1r8gVr2gYG37yFmgVCxwO7wHv3dA-2VB42ud0c6uV9zlHByV1mZaGHw-CAoWjHAQxKj8ihNTn4znCJy8VWsf2Pbio17n-Pq804paifQqKOViSg90a7M-giOJ; launcher_session_id=ff7****ac; guest_flow_type=standard; SC=LC=en:TM=1516****43; SWADCC=TS=15162****50:TM=1516*****50

73

Re: AHK: Internet Explorer Platform APIs

Можешь поподробнее, это запуская мой код, из какого запроса инфа, если оставить работать код есть бан.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).

74

Re: AHK: Internet Explorer Platform APIs

А возможно я ошибался и для каждого нового чата гостю нужен новый skypetoken.
Так как пишут:

Skype also supports the notion of a guest, who can access a conversation from an invite, without a Skype account.

A guest account differs from regular accounts in that:

    They can only access a single group conversation.

https://skpy.t.allofti.me/protocol/login.html

75

Re: AHK: Internet Explorer Platform APIs

Malcev пишет:

Я один раз получаю token в https://join.skype.com/api/v1/users/guests.
После этого он у меня во всех чатах только посылается, либо в хедере либо в боди.

Так у тебя так работало, или ты ошибался что работало именно так?

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.28.02 (Unicode 32-bit).