因為之前已經試過用python呼叫skype api是可以運作的,但是真的要開始用的時候才想到,在Windows 10上可以使用,不代表在Windows Server or Linux Server上也可以使用,想要重新測試才發現已經忘得差不多了,程式也找不到,馬上記下來很重要,所以又花了一些時間整理後,馬上記下來,這次的實驗成果是

1.ubuntu server 20.04 可以使用

2.設定msn 應用程式密碼取得token 供 python使用

#pip install SkPy 光是這個字我就打了很多次因為skype,所以一直打成skyp少一個e,仔細看才發現後是skpy

from skpy import Skype

from skpy import SkypeAuthException

#取得token的方法,一開始以為應用程式密碼是token,自己存了一個檔案就一直出錯,第一次只要提供tokenfile的位置檔名,驗證成功就會寫入

def connect_skype(user, pwd, token):  

    s = Skype(connect=False)  

    s.conn.setTokenFile(token)  

    try:  

        s.conn.readToken()  

    except SkypeAuthException:  

        s.conn.setUserPwd(user, pwd)  

        s.conn.getSkypeToken()  

        s.conn.writeToken()  

    finally:  

        sk = Skype(user, pwd, tokenFile=token)  

    return sk

“”” 為了token取得,真的是花了好多時間,因為當初測試時沒有記錄下來,所以又花了很多時間尋找和測試,竟然沒有人寫出來,可能太簡單?!google產生的token可以直接使用,結果skype的產生的不是token而是password “””

要選擇應用程式密碼

#要記得按OK

#最重要的就是試了很多次的地方,密碼要把原來的密碼改成剛剛新增的應用程式密碼,再去產生token,密碼要換成應用程式密碼是重點

sk = connect_skype(“msn*******@*******.com”,”b********n”,”.tokens-app”)

# skype profile 中的id,不可以自己發給自己,我因為換發送帳號和沒有換接收帳號,多跑了三次才發現,也可以透過contacts查詢

contact = sk.contacts[‘live:.cid.9*************d’]

contact.chat.sendMsg(“test”)

#發送成功

參考:https://www.youtube.com/watch?v=mSY57sJ-2oM

最後修改日期: 13/08/2021

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。