Jump to content
Sign in to follow this  
WannaBeGut

Skype - Call Check

Recommended Posts

WannaBeGut

Hey,

I want to make a application which calls a User and returns the error / status of the call. I don't think it works, the status stays "routing". Not 100% sure what that means for me.

$oSkype = ObjCreate("Skype4COM.Skype")
$oUser = $oSkype.User("User")
$oSkypeEvent = ObjEvent($oSkype,"Skype_")
$oError = ObjEvent("AutoIt.Error","MyErrFunc")
$cUserStatus_Offline = $oSkype.Convert.TextToUserStatus("OFFLINE")
$cUserStatus_Online = $oSkype.Convert.TextToUserStatus("ONLINE")
$cCallStatus_Ringing = $oSkype.Convert.TextToCallStatus("RINGING")
$cCallStatus_Inprogress = $oSkype.Convert.TextToCallStatus("INPROGRESS")
$cCallStatus_Failed = $oSkype.Convert.TextToCallStatus("FAILED")
$cCallStatus_Refused = $oSkype.Convert.TextToCallStatus("REFUSED")
$cCallStatus_Cancelled = $oSkype.Convert.TextToCallStatus("CANCELLED")
$cCallStatus_Finished = $oSkype.Convert.TextToCallStatus("FINISHED")
$cCallStatus_Busy = $oSkype.Convert.TextToCallStatus("BUSY")
$cAttachmentStatus_Available = $oSkype.Convert.TextToAttachmentStatus("AVAILABLE")

If Not $oSkype.Client.IsRunning Then
    $oSkype.Client.Start()
 EndIf

 Func Skype_AttachmentStatus($aStatus)
    MsgBox(0,"","Attachment status " & $oSkype.Convert.AttachmentStatusToText($aStatus))
    If $aStatus = $oSkype.Convert.TextToAttachmentStatus("AVAILABLE") Then
        $oSkype.Attach()
    EndIf
 EndFunc

While 1
    If $oSkype.CurrentUserStatus = $oSkype.Convert.TextToUserStatus("ONLINE") Then
        ExitLoop
    Else
        $oSkype.ChangeUserStatus($oSkype.Convert.TextToUserStatus("ONLINE"))
    EndIf
    Sleep(1000)
 WEnd

 If $cUserStatus_Offline = $oSkype.CurrentUserStatus Then
    $oSkype.ChangeUserStatus($cUserStatus_Online)
 EndIf

   $oCall = $oSkype.PlaceCall($oUser.Handle); Start Call
   $callstatusraw = $oCall.Status;Raw Call Status
   $callstatus = $oSkype.Convert.CallStatusToText($callstatusraw);Call Status converted to Text
   While $callstatusraw <> $cCallStatus_Inprogress
     MsgBox(0, "", ""&$callstatus);Displays the Call Status
  WEnd

The part until the $oCall Variable is from Andy Flesner (Airwolf123). But works fine.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • nooneclose
      By nooneclose
      Good afternoon, I am in need of some help. I am sure this is a stupid question requiring only one or two lines of code. However, I would greatly appreciate the help I cannot figure this out. I also tried searching for the answer on the internet but no one except me apparently seems to be having a hard time figuring this out and or is asking about it. 
      I simply want to change the "status" of an email from unread to read once I have processed it. My code is over 500 lines and I would like not to clutter this post with it. Assume I have all my includes and connections properly defined and stuff. 
      Here is the bit of code where I am trying to change the email that was used from unread to read:
      Func ChangeEmailStatus() ;******************************************************************************* ; changes the status of an email from unread to Read ;******************************************************************************* Local $iRows = UBound($aItems, $UBOUND_ROWS) MsgBox("", "Number of Unread emails (Before Change)", $iRows) _OL_ItemModify($oOutlook,$aItems[$i][0], Default, "Read=True") MsgBox("", "Array Display 1", $aItems[1][0]) MsgBox("", "Array Display 2", $aItems[2][0]) Local $iRows = UBound($aItems, $UBOUND_ROWS) MsgBox("", "Number of Unread emails (After Change)", $iRows) EndFunc  
    • Emmhor1
      By Emmhor1
      Hi All,

      MAIN QUESTION:
      Is it possible to Call specific function within a GUI

      So I have a script with multiple functions although I don't want to use every function every time.
      My Idea is to create a simple GUI which allows me to select what functions I want to use then run the funtions by clicking a button.
      I have already made a GUI which allows me to select specific .exe's I would like to run after selection it runs the .exe one by one.
      This script is on my work laptops and cannot access it right now.
       
      Who can help me with this?
      GUIcreate
      Func1 
      Func2
      Func3
      Then have a boxes which allows me to select the specif Func.(I used GUIChecked and Unchecked in my other script)
      Then a button which executes/calls the selected functions
    • CosminV
      By CosminV
      Hello Guys,
      Could you please let me know if there is a possible way to call a number from PC to Phone using AUTOIT?
      Thank you for your time!
       
      Best regards,
      CosminV
       
    • r0ash
      By r0ash
      Hi guys,
      I am trying to backup Skype contacts when the Skype window is minimized or machine is locked. But ControlSend is not working.
      However when I run program, when Skype is active & focused, same program works.
      #Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_UseX64=n #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** $pid = Run("skype.exe") $hWnd = WinWait("[CLASS:tSkMainForm]", "", 10) WinSetState($hWnd, "", @SW_SHOW) Sleep( 1000 ) ControlSend($hWnd,"","TConversationsControl1", "!cdb") If I change 
      WinSetState($hWnd, "", @SW_SHOW) to 
      WinSetState($hWnd, "", @SW_MINIMIZE) The file dialog to save contact as file will never appear. Where FAQs says ControlSend() instead of Send() will work even computer is locked.
      Thanks for your time.
       
      P.S: I've tried to find if backing up Skype contacts violate any EULA but do not find anything. Kindly enlighten me if this post is against forum rules in any sense.
    • ur
      By ur
      There is a build machine in the network where it will automatically download the code from source repository and compile using visual studio and compresses the complete code in a zip file.
      I have added a line at the end of the build script(written in python on that machine) to copy that zip file to my ESX Virtual machine.
      Where I kept a AutoIT exe to wait for the zip file, once it is copied then I will extract the contents and find only the dll files in the extracted folder and do the Install creation using Installshield silently and copy the created setup files to anther machine.
      I wrote the script till the setup files creation.
       
      But now the problem is, when the zip file is copying through network, the autoit script is detecting it even the copy is still in progress and trying to extract the zip file and failing.
      Even when I am checking whether the file in use is not working.
       
      Any suggestion on how to check whether the copy is completed.?
×