2014-02-09 74 views
9

我想邀請用戶發送特定消息,但我無法找到我可以設置邀請消息的位置。Skype邀請消息

這是我做的一個(簡化)示例:

skype.Client.Start(true, true); 
var user = skype.SearchForUsers("the_name_i_am_searching_for") 
    .Cast<User>() 
    .FirstOrDefault(); 
if (user != null) 
    user.BuddyStatus = TBuddyStatus.budPendingAuthorization; 

有了這個代碼默認邀請被髮送。

+0

訪問http://stackoverflow.com/questions/3291090/skype-how-to-get-started並在代碼中找到它。 –

+0

@YelelMacia:我應該從那個帖子中拿出什麼?我知道如何發送消息給用戶,以及如何讓某人成爲Skype的朋友;我不知道如何修改自動發送的邀請郵件然後你做'user.BuddyStatus = TBuddyStatus.budPendingAuthorization'! – Marco

回答

9

嘗試使用Property數組而不是簡單的賦值。 更改

user.BuddyStatus = TBuddyStatus.budPendingAuthorization; 

skype.Property["USER", "the_name_i_am_searching_for", "BUDDYSTATUS"] = 
    string.Format("{0} {1}", (int)TBuddyStatus.budPendingAuthorization, 
          "your welcome message") 

我沒能找到任何官方的文檔,但this LIB是非常有益的。通知SetBuddyStatusPendingAuthorization方法

+0

非常感謝Grin!你的樣品很完美! – Marco

+0

只是說明:VS告訴你最好使用'skype.Property [「USER」,「the_name_i_am_searching_for」,「BUDDYSTATUS」] = string.Format(「{0} {1}」,(int)TBuddyStatus.budPendingAuthorization,「你的歡迎信息「)' – Marco

+0

@Marco我不得不安裝R#才能得到這個建議。謝謝你的提示! – Grin

1

Skype的API提供了一個功能skype.SendMessage(<username>, <string>),我認爲你正在尋找。

+0

否,'SendMessage'用於向用戶發送消息。不幸的是,當您邀請用戶成爲您的朋友時,並非您發送的消息... – Marco

相關問題