Onofficieele HM API Proof of Concept

Status
Niet open voor verdere reacties.

Maximvdw

Gebruiker
Lid geworden
7 feb 2009
Berichten
921
Hallo,

Ik ben al 'redelijk' lang bezig met een onofficieele helpmij.nl API. En wou alvast enkele Proof Of Concept apps laten zien.
Het zijn simpele console applicaties die eigenlijk enkel dienen om te tonen waartoe de API (momenteel) in staat is.

De API word pas gereleased als ie volledig klaar is. Want procentueel zit ik nu op zon 3% van wat ik eigenlijk ermee wil kunnen.

Momenteel is het een herschreven C# API van de slordige VB code van mijn niet gepubliceerde HM Userbar Creator
Waarschuwing: Probeer nog niet om te werken met de API, deze bevat redelijk veel bugs momenteel
Opensource API: https://github.com/Maximvdw/HelpmijAPI-.NET

POC 1: Inloggen en gegevens bekijken/editen : Nog niet toegepast op alle gegevens (email etc)
poc1.png

Download Hier - Alles uitpakken

POC 2: Nieuwe topics verkijgen van de homepagine (en vervolgens lezen om auteur te weten)
poc2.png

Download Hier - Alles uitpakken

POC 3: Nieuwe topics verkrijgen en zoeken naar keywords met jou intressen
poc3.png

Download Hier - Alles uitpakken

POC 4: De helpmij chat
[SMALLIMG]https://dl.dropboxusercontent.com/u/15707718/HelpMij.nl/helpmijexample.png[/SMALLIMG]


Her doel van deze Proof Of Concept appjes, is eigenlijk om te vragen of jullie (met wat jullie nu zien) iets nuttigs kunnen bedenken.
De API zal zeer uitgebreid worden (van de dingen die je nu ziet, tot het posten reageren op vragen , chat ,..).

Laat me zeker jullie ideen weten ;)

gr,
Maxim
 
Laatst bewerkt:
Je idee is leuk maar een API moet natuurlijk gefaciliteerd worden door de service zelf. Je loopt nu het gevaar dat je applicatie niet meer werkt wanneer er onderdelen in de site worden aangepast.

Je programma geeft hier en daar nog wel eens een runtime error maar het werkt zeker.
Zou je je project eventueel opensource willen maken? Dat geeft andere .NET programmeurs de mogelijkheid eventueel bij te dragen aan je project.

PS: de chat heeft een zeer makkelijke interface (AJAX is praktisch een API). Er is weinig nodig om ook hier een applicatie van te maken.
 
Laatst bewerkt:
Hmm, daarom het woord onofficeel erbij. Ik denk niet dat Helpmij.nl echt de behoefte heeft voor een API te maken.
Daarom maak ik er zelf een. API en voorbeelden zullen opensource komen (vandaag/morgen) maar de documentatie ga ik pas echt tonen
als ie af is.

De kans dat de site wijzigt is er altijd. Maar mijn Userbar Creator is nu al een 2 tal jaar oud sinds ik eraan begon, en werkt nog steeds.
Dus ik denk dat het nog wel wat meevalt.

EDIT: API staat nu op github: https://github.com/Maximvdw/HelpmijAPI-.NET

gr,
Maxim
 
Laatst bewerkt:
Even een status update.

De API is nog altijd lang niet af. Chat/Forum is nu geintegreerd maar bijde zijn niet volledig.
Ook bevat de API wat UI (inlogscherm, inlogcontrol , hompagetopic control, ...)
Ik stuur zodra ik kan de nieuwe update door naar GIT

gr,
Maxim
 
Miss wel, maar momenteel worden veel (alle) ideeen voor apps/progs tegengehouden :(.
Als Ik tijd heb zal ik mijn App voor android (HM chat <- wat Niet gaat Via de mobiele site) laten goedkeuren door het beheer. Deze is af, en ziet er echt Cool uit met zijn gui en gebruiksgemak, maar de chat is van Helpmij en in het login venster staat het Logo, dus ik/iedereen zal steeds toestemming moeten vragen voor de kleinste dingen ;P
 
hmchat_mc.png

Screenshot: chat in Minecraft (bukkit plugin)

Dit heeft niet veel nut, maar het is een goede test voor de HM API voor Java.
Nu kunnen er android apps komen

PS: Voor mij de perfecte mix.. minecraft + helpmij = multitasken :D
 
Laatst bewerkt:
Vandaag nog enkele functies toegevoegd aan de Chat sectie van de API, die het mogelijk stellen
om manueel data te wijzigen.. Waardoor het mogelijk was om terug in de tijd te gaan.
Wat je ook ziet is dat ik de fout van uitlogen , maar nog steeds updates ontvangen (zoals te zien in bukkit plugin)
verder heb uitgewerkt om zo chat updates te ontvangen zonder de melding te geven dat ik ben ingelogd. Dit gaat enkel bij updates, dus je
kan niet chat berichten versturen dan ;) :

Het ding dat ik nog wel moet fixen, is dat wanneer je niet inlogd de smilys nog niet worden vervangen.. Dus deze staan nog steeds als <img .. in hun bericht

PS: Het kan tot max 2 min duren voor 30 dagen terug in de tijd te gaan, dat moet ik nog versnellen

backintime.png


Download de source code Visual Studio C# 2010

Zo! we zijn weer een stapje dichter bij een coole Helpmij API die allerlei coole dingen kan =D
 
Laatst bewerkt:
Ik zal kijken of ik er een echt chat programma van kan maken voor de desktop :D
 
:P. momenteel zitten er wel nog bugs in:
- 3de persoon word nog niet gedetecteerd
- smilys van mods/admins word nog niet omgevormd
- html links worden nog niet omgevormd
- De kleur is een vaste kleur (waarmee je zend) -> heb nu chat.SetChatColor(System.Drawing.Color color) toegevoegd

maar jah ;) normaal zou je er nu al toch iets van kunnen maken

Wat tips:
Inloggen
Ik gebruikte bij bovenstaande test app een frmLogin die in mvdw.helpmijapi.gebruiker.gui staat.
Maar je kan zelf er ook een schrijven. Ook heb ik een usercontrol van een login schermpje.
Om dit toe te voegen moet je in je toolbox "Choose Items.." en de dll nog is selecteren.

Chat connecteren
Zodra je een ingelogde gebruiker hebt (Gebruiker user)
dan moet je Helpmij.GetChat(user); en dit geeft als output een 'Chat' instantie
als je deze methode gebruikt is de gebruiker direct ingelogd, dus zet deze code best ook in een thread.

Chat zenden
Chat zenden heb je chat.SendMessage("lalal")
maar je moet zorgen dat je commands met .SendCommand doet, dus je zal zelf moeten deteceteren of het met een '/' start

Chat ontvangen
Gebruik hiervoor threads die om de secconden een chat.Update() doen.
deze functie returned een List<ChatMessage> die de nieuwe berichten ontvangt (kan null zijn)

Kijk eventueel naar de Java source van de bukkit plugin. De api is niet 100% hetzelfde maar sommige dingen
kunnen je miss helpen.
 
Laatst bewerkt:
ik krijg een error:
Code:
An object reference is required for the non-static field, method, or property 'mvdw.helpmijapi.chat.Chat.SendMessage(string)'
 
dat komt meestal voor wanneer hij de cookies niet vind van de user..
Heb je volgende code (ongeveer):

Gebruiker user = ...
Chat chat = Helpmij.GetChat(user);
chat.SendMessage("Hallo");

indien je Chat chat = Helpmij.GetChat(); hebt (zonder user)
moet je nadien chat.Connect(user); gebruiken

PS: Gebruik altijd voor alle zekerheid de dll die op Github staat, deze is up-to date
 
Laatst bewerkt:
Werkt prima voor zover ik kan zien. Ziet er wel naar uit dat testen irritant kan zijn in de chat :P
 
wel, dat ik wat we nu juist moeten verhelpen.. :P
meestal bij het testen deed zei ik bv. altijd een antwoord op iemand zijn vraag.
Als het dan gepost werd, dan was er niets aan, en indien niet.. dan moest je verder zoeken :)
 
Het zijn eigenlijk juist de exta functies die ervoor zorgen dat een Desktop chat app verkozen word voor de website:
Enkele voorbeelden:

- Het zoeken van een goed contrast van chatkleur op basis van andere gebruikers
- Het tonen van de laatste vraag die iemand posten als deze de chat joint (zodat je kan helpen)
- Het melden (geluidje) wanneer je een bericht hebt dat naar jou gericht is
- .. En zo van die dingen

Wou dit maar even geven aan de mensen die het nut nog niet echt zien ;)

gr,
Maxim
 
Kun jij even een basis maken waar je zoals op de website kunt chatten en dat er een msgbox komt als er een nieuw bericht is? (Het lukt mij echt niet :()
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan