Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Recording Skype chat
Message
De
24/10/2009 12:07:00
Dragan Nedeljkovich (En ligne)
Now officially retired
Zrenjanin, Serbia
 
 
À
24/10/2009 11:25:43
Dragan Nedeljkovich (En ligne)
Now officially retired
Zrenjanin, Serbia
Information générale
Forum:
Visual FoxPro
Catégorie:
COM/DCOM et OLE Automation
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows Server 2003
Network:
Windows 2003 Server
Database:
Visual FoxPro
Divers
Thread ID:
01431057
Message ID:
01431248
Vues:
83
This message has been marked as the solution to the initial question of the thread.
>>I guess I didn't make it very clear, it is only Skype _Chat_ which we are looking to log, not actual voice recordings. Most of the products suggested do voice recording.
>
>I know I've set mine to keep logs forever, but I can't read them with anything else but skype itself, which sort of sucks. Most of the registry entries for Skype, the interesting ones, are encrypted, so I don't even know where does it keep its data. Could be anywhere - today's disks are huge forests.
>
>But there's a COM interface for it:
>
>osk=CREATEOBJECT("Skype4COM.Application")
>
>..and any one from other Skype4COM interfaces. Somewhere in there you should be able to find an interface, maybe an eventhandler() or a prg-based classes with Implements clause (try with Object Browser)... one of those should be able to get you there.

OK... here's more stuff I tried:
osc=CREATEOBJECT("Skype4COM.Skype")
oc=osc.Chats
?oc.Count
?oc.Item(1).Name
?oc.Item(2).Name
?oc.Item(1322).Name
?oc.Count
?oc.Item(1435).Name
* it turns out that this collection is a latest-is-first list, because the chat #1435 
* happened almost three years ago (with the late Jim Nelson).
om1=oc.Item(1)
oms=om1.Messages
?oms.Count
?oms.Item(1).Body
?oms.Item(1).ChatName
?oms.Item(1).Chat
och=oms.Item(1).Chat
?och.TopicXML
?och.DialogPartner
?och.FriendlyName
?och.Messages
?och.Messages.Count
?oms.Count
?och.AlertString
?och.MyRole
?och.MyStatus
?och.Name
?och.RecentMessages
?och.RecentMessages.Item(1)
om2=och.RecentMessages.Item(1)
?om2.Body
?om2.EditedTimestamp
?om2.Timestamp
?om2.Body
?och.RecentMessages.Count
So it seems that a messages collection keeps the messages for one chat, and in a message the .body property either contains the actual message text or XML with list of participants. So it should be possible to pull whatever you need from these objects and store it in a table (well, a set of tables - participants, chats, chat messages) and there's your archive. Just periodically import into your tables and you got it all.

back to same old

the first online autobiography, unfinished by design
What, me reckless? I'm full of recks!
Balkans, eh? Count them.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform