Voicetrading Invoicer - Invoicing Tool for Voicetrading

anybody

Mitglied
Mitglied seit
19 Mai 2006
Beiträge
284
Punkte für Reaktionen
1
Punkte
18
VoicetradingInvoicer - Invoicing Tool for Voicetrading

To facilitate billing the users of my Voicetrading account for what calls they have made, I spent several days writing a billing tool to create invoices.

If someone else has similiar needs, maybe he/she may find this of use so I am hereby releasing it to the world :)
Sourcecode (C#) is included, License is GPLv3.

Changelog:
v1.7.0.0
- new button "Create PDF", prints directly to a printer with the exact name "FreePDF"
- it's now possible to create yearly reports instead of monthly
- fixed printing problems when the country list on the first page got excessively long
- website parser rewritten due to new voicetrading website, now uses cookies and does properly logout when "Go Offline" is pressed
- possibly other changes I have made during the last months (I don't remember)
v1.6.2.0
- Small change at the Login Parser, since VT now shows a refresh HTML page before showing the main website.
v1.6.1.0
- "Customers" are now saved as cleartext file. Conversion of existing, binary "Customers" is done automatically when closing the Customers window.
v1.6.0.0
- Main window now freely scalable and maximizable
- Possibility to change the sorting of the data back to the original way it is sorted
- "Destinations" are now saved as Cleartext file. Conversion of existing destinations is done automatically when closing the Destinations window.
- Several details made more consistent, program now 100% english instead of a mixture of english and german
- More comprehensive list of 'Destinations now included
v1.5.0.0
- Adapted to changes on the Voicetrading Webseite
- Several small things finalized and improved
- new print functionality with analysis and statistics
- Local cache files of Voicetrading billing data are now saved as Cleartext and no longer as binary
v1.3.0.0 Initial public release
- Feature: Callback & Callthrough recognition Support
- Feature: Use of wildcards (*) for customer numbers

Not done yet:
- Better handling of "Destinations" (= Country prefixes), maybe with some clever way to share or get destination information over the internet
- Support for vouchers and transfers and other obscure things Voicetrading might support

Since my own needs have been fulfilled now, I cannot promise that I will be able to invest significant amounts of time into new features that are requested. I will however make a good effort of fixing bugs if someone reports them.


HowTo:
There is no "Manual" regarding the usage of VTinvoicer, however, here are some tips to get you started:

General Usage:
The general goal of designing the program has been to make it self-explanatory - at least for someone who has some computer experience and knows basic GUI ideas. I would hope that I have at least to some degree succeeded in this. If you think otherwise, please complain and point out what is unclear so I can improve it!

Getting Started:
To get started using it, you should first enter your Voicetrading login/password in the "Edit Voicetrading l/p" Screen. You should now be able to "Login" and Fetch Data for individual months. The buttons "Edit Customers" is used to seperate the costs incurred into different customers (or "accounts" or "cost centres" if within the same company), while the "Edit Destination" button allows you to define Country Codes and Area Codes to automatically group your call costs by called country / region.

Edit Customers:
Please enter customers (accounts) with their complete CallerIDs, inclusing area code, for example: 498912345678 for a CallerID consisting of 49 (Germany) 89 (Munich) 12345678 (the local number). You also have the option of setting a markup fee in percent, in case you want to earn some money :)

In addition to the possibility of specifying CallerIDs, you can also specify outgoing numbers called that will be automagically billed to the customer you entered them for. This feature is mainly used for call forwarding, where the forwarded call is done with the same CallerID that it had when coming into the Asterisk (telephone) system. In those cases the "customer" will have made a call without using one of his own CallerIDs and he would not be billed. By entering for example the mobile-phone numbers of call-forward targets in this area, you will be able to correctly map those calls to those who are responsible for it. Remember, that all calls are first matched by CallerID, and only if no customer/account matches, the outgoing number will be used to determine who should pay for the call.

Edit Destinations:
General Information: What you do in "Edit Destinations" will NOT affect how much a customer/account is billed - it will only affect the way the bill is displayed and is very nice for analyzing on what kind of calls you spent all that money on.
With that said, the general idea of "Edtit Destinations" is: Enter Country Name and Country Code - for example "Germany" and "49" or "United States" and "1", and then proceed with adding "Area Codes", which may be different states within the country or target numbers that are billed differently. For example, adding an area code "242" to the country "United States" and describing it as "The Bahamas" might be a good idea. In the same way you could add a filter for calls to mobile phones in Germany, by creating area codes "15" "16" "17" and describing them as "mobile" or "cellular".

Technical information
some general technical information you might want to know about

- Very important: Make sure that you have a recent version of the .NET runtime installed. Version 2.0 will NOT suffice !

- Overview of the basic directory structure in %APPDATA%\VTinvoicer\
  • VTusername-YEAR-Month.cache.tsv Call data retrieved from Voicetrading for the month in TAB-Separated-Values Format
  • VTusername-customers.config Configuration data, the configured customers for the account in cleartext format
  • VTaccount.cfg Basic Voicetrading account configuration file, contains l/p (binary format)
  • VTdestinations.config Configuration file for call destinations stored (cleartext format)

%APPDATA% can be found found in
=> Windows VISTA / Windows 7: C:\Users\(yourusername)\AppData\Roaming\VTinvoicer
=> Windows XP/Server2003: C:\Documents and Settings\(yourusername)\Application Data\VTinvoicer

A sample "VTdestinations.config" which contains many country prefixes is included in the package. To use it, copy the file to the appropriate directory (see paths above) while the program is not running.

---

If you have any comments, feature requests or questions feel free to ask.
 

Anhänge

  • VTinvoicer v1.5.0.0 - Screenshot #1.png
    VTinvoicer v1.5.0.0 - Screenshot #1.png
    175.8 KB · Aufrufe: 109
  • VTinvoicer v1.5.0.0 - Screenshot #2.png
    VTinvoicer v1.5.0.0 - Screenshot #2.png
    277.2 KB · Aufrufe: 73
  • VTinvoicer - v1.6.2.0.zip
    236.1 KB · Aufrufe: 34
  • VTinvoicer - v1.7.0.0.zip
    239.8 KB · Aufrufe: 18
Zuletzt bearbeitet:
hi besten dank gibt es auch dies für bestvoipreselling
 
Habe dort keinen Account. Ist das auch ein Betamax Label oder was anderes? Auf der Webseite finde ich absolut gar keine Informationen wie der Betreiber ist.

Aber so wie die Webseite aussieht - also mit Möglichkeiten Kunden zu definieren und denen Aufpreise zu berechnen - haben die doch sicher eh ne Möglichkeit die Gespräche wieder auseinanderzufieseln und nach Kunden aufzuteilen so daß man das doch gar nicht mehr selber nachträglich machen muss?

(oder???)
 
hallo ja das ist enthalten, ich dachte ob es mit einem tool einfacher wäre, resp. änderungen vornehmen kann.
 
01.09.2010 - updated: Neue Version v1.6.2.0 die sich nun wieder einloggen kann bei VT, da ich eben gemerkt habe das es nicht mehr ging :)

28.10.2010 - update: Nun auch ein bisschen Anleitung in Post #1, und Sprache der Beschreibung auf Englisch geändert da das Programm auch Englisch ist :)
 
Zuletzt bearbeitet:
Erstmal vielen Dank für die Programm,
leider seit paar Monate login bei Voicetrading ist immer fehlgeschlagen, evtl. wegen neu Login Maske. Haben Sie ein Update?

Danke im Voraus
 
Erstmal vielen Dank für die Programm,
leider seit paar Monate login bei Voicetrading ist immer fehlgeschlagen,
Das war nur irgendne Kleinigkeit wo ich eine Zeile im Code angepasst hatte. Da ich nicht sicher war ob das Programm überhaupt irgendjemand verwendet ausser mir hatte ich das nicht geposted.

evtl. wegen neu Login Maske. Haben Sie ein Update?
Danke im Voraus
Leider scheint Voicetrading vor ein paar Tagen oder Wochen das WebInterface KOMPLETT umgestellt zu haben.
Musste dementsprechend die ganze Webseiten-Parserei neu machen... Hat mich 2 Stunden gekostet :-(

Changelog (aus dem Gedächtnis, keine Ahnung was ich alles so gemacht habe in den letzten Monaten):
- Neuer Button "Create PDF", druckt ohne Rückfrage auf dem Drucker "FreePDF" (muss exakt so heissen)
- Möglichkeit Auswertungen Jahresweise (statt Monatsweise) zu erstellen
- Druckprobleme behoben wenn die Länderübersicht extrem lang wird (aufgetreten durch die Jahresauswertung)
- Webseitenparser fast komplett neu geschrieben weil die Voicetrading Webseite sich deutlich geändert hat
- Webseitenparser nutzt nun Cookies (zwangsweise)
- "Go Offline" loggt sich auch explizit wieder aus auf der Voicetrading Webseite

Kurze Rückmeldung ob's geht wäre nett. Download ist im Post #1.
 
Zuletzt bearbeitet:
Vielen Dank,
die Programm funzt prächtig, sogar PDF erstellung.

Eine Frage: währe ist möglich die Destination direkt von Voicetrading Preislist in Programm importieren bzw. in passenden format konvertieren? Obwohl ca. 27000 Destination, für die Programm auszuwerten währe zuviel, es kann sein dann die Performance runtergeht.
 
Vielen Dank,
Eine Frage: währe ist möglich die Destination direkt von Voicetrading Preislist in Programm importieren bzw. in passenden format konvertieren? Obwohl ca. 27000 Destination, für die Programm auszuwerten währe zuviel, es kann sein dann die Performance runtergeht.

Wollte erst nachfragen was das Programm denn mit der Liste der Länder und Preise machen soll da es ja keine Vorwahlen gibt und habe dann erst in der Downloadbaren Excel Tabelle den "Numbering Plan" entdeckt. Den kannte ich noch gar nicht!

Problem ist aber tatsächlich das dieser sehr sehr lang ist und leider auch sehr sehr redundant, z.B. ist in Deutschland E-Plus nicht nur als 0157 eingetragen sondern auch noch 0157-1 bis 0157-9, abgesehen von 0157-5 was dann komischerweise "Mobile Others" zugewiesen ist.

Abgesehen davon das mich das ne ganze Menge Zeit kosten würde das einen Importer zu entwicken i(die ich eigentlich darein nicht investieren möchte da das keine Funktion ist die ich wirklich brauche): Ja, das könnte vermutlich auch ein Performanceproblem werden (sicherlich ein Lösbares, müsste ich halt bisserl optimieren dann). Auf jedenfall sieht das Programm momentan gar nicht die Möglichkeit vor so viele Länder und Subvorwahlen zu haben...

Meine - deutlich kompakteren - Einträge für die Länder und die Bereiche in den Ländern kommen übrigens (von Hand übernommen) von Wikipedia - List of country calling codes
Immer wenn ich in der Auswertung entdecke das es wieder ein Ziel gibt das ich nicht abgedeckt habe schaue ich dort nach was es ist und trage es von Hand nach. Kommt inzwischen allerdings nicht mehr oft vor.

Welche Ziele man noch nicht in der Liste hat sieht man am Einfachsten wenn man im Programm die Tabelle sortiert nach "Country" und dann unter U wie Unkown nachschaut (in der Regel ganz am Ende, es sei denn man hat Länder mit Anfangsbuchstaben >U was selten ist).
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Statistik des Forums

Themen
246,361
Beiträge
2,250,846
Mitglieder
374,014
Neuestes Mitglied
flindiesel
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.