Entwicklertreffen vom 30.01.2017

Entwicklertreffen Übersicht




Zusammenfassung

Im Folgenden findet man das Protokoll des Entwicklertreffens vom 30.01.2017.

Es wurde in dieser Woche nichts Neues angekündigt.

In der Fragerunde wurden unter anderem wieder kleinere Probleme der App-Entwickler besprochen. Dem User neugierig39m wurden als neuer App-Entwickler einige Anfängertipps gegeben. Im Hinblick auf neue User bietet Imo2014 ein Grundgerüst für Anfänger an, das eine Erweiterung der Beispiele aus dem Entwickler-Wiki darstellt. Gleichzeitig rief IgelchenM dazu auf, sich bei Verbesserungsvorschlägen an ihn zu wenden und ermutigte die anwesenden Chatter dazu, das Entwickler-Wiki mit deren Hilfe zu verbessern. Schließlich gab es den Hinweis, dass ein mutwillig herbeigeführter Absturz des Dev-Servers zu einer Accountsperre führen kann.

Protokoll

IgelchenM: Hey zusammen - schön dass ihr heute wieder etwas Zeit mitgebracht habt um über User Apps zu quatschen!

IgelchenM: Die letze Woche war relativ langweilig, es gibt keine Neuigkeiten von Knuddels bezüglich User Apps. Damit wir nicht viel Zeit verschwenden (ich hab nämlich Kopfschmerzen seit 3 Tagen - scheiß Wetter), legen wir auch schon mit der Fragerunde los. Heute macht den Anfang Ich sach mal, Imo2014 und Pudding. Habt ihr Fragen mitgebracht?

mikasapikaa: Knuddels ist mal langweilig O.o das gibts ?

Pudding: Ich habe auch Kopfschmerzen und keine Fragen

IgelchenM: langweilig im Sinne von - ich kann leider nix neues Mitteilen

Imo2014: neine keine Frage, nur eine Bitte, ich bräuchte ein paar mehr User im Raum coden auf dem DevServer. Alle kommt alle mal kurz vorbei :)

Ich sach mal: ja danke der nachfrage.. leider hab ich noch keine fragen .. vom thema her..

IgelchenM: na dann geht's weiter in der Nickliste - 00101010, Surprise77 und neugierig39m - habt ihr fragen mitgebracht? (ps. die in meinem Briefkasten, werden noch bearbeitet!)

SchlechteOnkelz: Das iOS Update kommt. Dadurch werden wieder Icons von Apps in der nickliste angezeigt. Das kann ich zumindest mal sagen

00101010: nein danke, keine frage

neugierig39m: IgelchenM da ich heute abend zum ersten mal hier bin möchte ich mich gerne enthalten da ich am anfang stehe und mich erst in code rein arbeiten muss

Surprise77: doch ich wohl

IgelchenM: na dann erzähl mal neugierig39m - hast du schon programmierkenntnisse oder fängst du jetzt erst an damit?

neugierig39m: ja ich habe zwar kenntnisse mit html, php und grundkennise mit mysql IgelchenM

neugierig39m: hab auch schon mal ein code umgeschrieben fpr eine begrüssung

IgelchenM: na dann wirst du dich noch etwas mit JavaScript beschäftigen müssen - aber wenn du php kannst, ist der Aufbau der Struktur relativ leicht zu übernehmen - die zwei Scriptsprachen sind sich ja relativ ähnlich ^^

SchlechteOnkelz: Da kann Olli dir mal die Videotutorials Posten die sind für Anfänger super :o

Surprise77: darf ich? :-)

Imo2014: neugierig39m wenn du ein kleines grundgerüst suchst, kann ich dir eins anbieten, ist aber noch nicht fertig

IgelchenM: Javascript Tutorial auf Deutsch

Shadow54: Ich wäre auch an jede Hilfe interessiert. :)

IgelchenM: die Videos von Jan (derNeuanfang) find ich gerade nicht - da musst du ihn mal anschreiben und fragen ob er dir den Link gibt ^^

IgelchenM: Surprise77 - du kannst deine Fragen ruhig stellen

neugierig39m: Imo2014 danke ich komme gerne darf zurück möchte es aber von grundgerüst selber mache

Surprise77: da ich mit meiner App, Igelchen wird sich vielleicht erinnern das ich das im Forum geschrieben hab, nich so weiterkomme hatte ich mir Hilfe geholt ... derjenige gibt mir aber die Dateien nich raus ... so das ich da nix ändern oder Ähnliches kann ... hab ich da ne Möglichkeit an die Dateien zu kommen, ja die App is installiert ...

IgelchenM: Nein, das problem ist - wenn der AppEntwickler sich querstellt und die Dateien nicht rausgibt, ist das sein gutes Recht - solang es sein Code ist, den er geschrieben hat. Schilder mir am besten via /m den ganzen Vorfall, dann schauen wir mal gemeinsam ob wir da was machen können

neugierig39m: das stimmt leider IgelchenM kenn da auch so einige

Surprise77: okay ... werd ich machen ...

IgelchenM: Das ist halt immer das Problem, wenn man andere für sich was machen lässt

SchnelleSchnalle: oder, wenn das problem nicht so schlimm is schau ob du jemand anderes findet der dir vielleicht helfen kann und den code zugänglich macht

Surprise77: nein das is nun kein Drama ... aber is halt ärgerlich ... weil der auch echt gute Sachen gemacht hat ... aber einiges nich so wie ich das gerne gehabt hätte ... und nun zickt der rum ... keiner Ahnung was der hat

IgelchenM: So, dann kommen wir auch schon zu den nächsten Ququknife, mikasapikaa und Maexxchen - habt ihr heute Fragen zum Thema User Apps mitgebracht?

neugierig39m: sehe es anders wenn ich jemand helfen kann mit einem code dann stelle ich ihn auch zuverfügung IgelchenM

IgelchenM: Meist hat das ganze dann mit Stolz zu tun ^^

SchlechteOnkelz: Ja davon gibts hier einige wenige Ausnahmefälle!

mikasapikaa: heute mal nicht komme momentan nicht dazu weiterzulernen :D (Geburtstagsvorbereitung unsu :D)

IgelchenM: neugierig39m - ist bei mir ähnlich. Wenn es nichts ist, was mich stunden gekostet hat, dann geb ich das auch frei für andere oder helfe denen auf die Sprünge, dass sie es auch hinbekommen - aber jeder Mensch tickt da halt anders ^^

neugierig39m: joo und jeder sucht sich sein vorteil IgelchenM

Imo2014: wenn jemand ein kleines Grundgerüst sucht, ich gebe gerne meines raus.

SchnelleSchnalle: ich helf auch gern leuten^^ aber sachen die ich selbser für mich bzw eigene channels geschrieben habe geb ich nicht frei, aber andere stehen auch auf github :)

Maexxchen: Nö, Fragen habe ich keine mitgebracht. Bei der App Besserwisser geht es auch weiter voran. Die Datenbank umfasst nun fast 50 Kategorien und das UI wurde auch nochmal verschönert. Gibt auch einen aktuellen Beitrag dazu im Forum.

Ich sach mal: würd mich da sehr für intresiern Imo2014

neugierig39m: Imo2014 da du es schon 2 mal gesagt hast was für grundgerüst ist es denn

Surprise77: Imo2014 ... ich schau mir mal an was Du mir geschickt hast ... wenn ich darf ... schreib ich Dir nochmal ... falls ich was brauche :-)

00101010: ja erzähl doch mal was zu deinem grundgerüst, was hast du dir dabei gedacht und so?

IgelchenM: ja ich beobachte, wie Channel Besserwisser langsam und stetig weiterwächst - bin mal gespannt, wann ich dazu komme nen AppCheck zu machen *fingerknacks*

Imo2014: zu sehen im Channel coden auf dem dev server

Maexxchen: Ich denke, lange wird es nicht mehr dauern. Es ist ja soweit schon ganz gut spielbar.

Imo2014: es beinhaltet nur Ziegenphobie und 2 weitere spiele angedeutet, ansonsten hat es eine Userliste, wer alles mal im raum war, jedem kann man bequem ne MEssage zusenden

Imo2014: Man sieht mit was derjenige online war, wie lange....

Imo2014: Knuddelsaccount ist auch eingebaut.

Imo2014: also so neA Art Starthilfe für alle die hier neu anfangen wollen.

neugierig39m: da bin mal frech Imo2014 möchte es mir gerne mal anschauen

00101010: eigentlich eine sehr gute idee, in der doc fehlt es an einigen stellen durchaus noch an beispielen (bzw. im wiki)

Imo2014: Man soll quasie nur noch das HTML UI anpassen und eigene Spiele einbauen.

neugierig39m: das würde für denn channel passen wo ich die begrüssen vom IgelchenM umgeschrieben habe

IgelchenM: 00101010 - wenn euch stellen auffallen, die Fehlen - so schreibt ruhig mir per /m was ihr noch haben wollt - ich werde das ganze Sammeln und nach und nach füllen - Im Wiki könnt aber auch ihr sofern ihr wollt mithelfen es besser zu machen

Ququknife: ach so ich darf auch schon? hatte ich voll überlesen :D

Imo2014: mom sammel ich noch Ideen, was alles eingebaut werden solle. Also an Aufgaben im Hintergrund.

IgelchenM: genau Ququknife du darfst

IgelchenM: @Imo2014 - häufig gewünscht werden Timer ... die alle X Sek / Min. was machen ^^

Imo2014: Auf eine Massenmailfunktion hab ich verzichtet, die soll man sich dan selber noch einbauen, wenn man andere User nerven will

mikasapikaa: IgelchenM ich hätte doch noch ne frage mache ich dann am Ende :D

00101010: oh timer funktionen habe ich haufenweise rumliegen

Imo2014: ist auch eingebaut

Ququknife: ich sitze an nem DiceMultiplayer Spiel so funktioniert das ja auch ganz gut nur wenn man es dann schon zu 2. spielen möchte buggt es rum, ich habe es schon so programmiert, dass jeder der reihe nach würfeln darf und nicht quer durcheinander aber trotzdem buggt es

Imo2014: 1min, 5min, 1 Stunde als vorgabe, rest leicht erweiterbar

IgelchenM: @mikasapikaa - stell sie ruhig

IgelchenM: @Ququknife was genau "bugt" denn rum?

Ququknife: die erste runde funktioniert noch, jeder darf einmal würfeln und plötzlich hängt man in einer endlosschleife fest und es wird automatisch gewürfelt bis einer gemutet wird :D

mikasapikaa: Hab bei meinem Channel in DEV Server als Test ne HeyThere App gemacht, aber habe nie was bei Filezilla o. ä. geändert... Jetzt bekomme ich aber immer die Fehlermeldung & ich weiss nicht was ich machen soll :o

mikasapikaa: ERROR: org.mozilla.javascript.EcmaError: ReferenceError: Nickname is not defined. (knuddelsDEV.30566114.HeyThere@v0: main.js
.........7) at knuddelsDEV.30566114.HeyThere@v0: main.js:7

SchlechteOnkelz: naja er sagt es dir doch

SchlechteOnkelz: Nickenname Not definier

SchlechteOnkelz: Defined

mikasapikaa: ja das kann ich ja lesen aber woher kommt das? ich hab ja nix verändert :o

IgelchenM: @Ququknife - arbeitest du mit einem Interval od. setTimeout() ?

Ququknife: mit setTimeOut()

SchlechteOnkelz: Speicherst du die Nicks in einer persistence und rufst die dann wieder auf?

IgelchenM: @Ququknife - ich vermute jetzt mal sehr stark, dass der timeout nicht beendet wird, sobald derjenige gewürfelt hat und anschließend der Bug passiert.

SchlechteOnkelz: Du musst ja die Würfel jedem User wieder zuordnen

00101010: @mikasapikaa dafür müssten wir mal den code sehen, kannst du den mal bei pastebin.com oder so posten?

SchlechteOnkelz: Am besten bei jsfiddle

mikasapikaa: >00101010:wenn du mir erklärst wo ich da was hinschreiben muss

SchlechteOnkelz: Da ist es gleich richtig formatiert xD

SchnelleSchnalle: mikasapikaa: ist es der code von heythere2 aus dem bitbucket?

mikasapikaa: >SchnelleSchnalle:yes

00101010: wenn du die seite aufgerufen hast kopierst du einfach den ganzen quelltext in das große textfeld (New Paste) und klickst unten auf create new paste, das reicht schon, dann einfach den link kopieren und hier schicken

SchnelleSchnalle: vermuitlich must du nur in zeile 7 das nickname gegen nick ersetzen

Ququknife: @SchlechteOnkelz ich speicher einfach in Arrays ab @IgelchenM wenn ich das spiel alleine Spiel funktioniert es wunderbar erst ab 2 spieler gehts nicht mehr. wie komm ich dann am dümmsten aus dem setTimeOt() wieder raus:D

SchnelleSchnalle: weildie variable heist nick und nicht nickname

mikasapikaa: ich probiers mal

IgelchenM: var meinTimeout = setTimeout(function(){ // mach was });
.........clearTimeout(meinTimeout); // hier wird er gelöscht / freigegeben

SchnelleSchnalle: in der fehlermeldung steht ja das in zeile 7 eine variable namens Nickname verwendet werden soll, die es aber offenbar nicht gibt

Ququknife: danke dann werd ich das mal einbauen und hoffe dass es dann funktioniert :)

mikasapikaa: jetzt hab ich es auf nick geändert, da kam auch die fehlermeldung nur halt dann mit NICK

SchnelleSchnalle: haha ok mikasapikaa, dann muss man wirklich mal den code ansehen

SchnelleSchnalle: am besten gehst du auf die seite kopierst den code mit der zwischenablage hinein, klickst dann auf Paste your Code und dann schickst du uns her den link

SchnelleSchnalle: https://codepaste.net/ https://codepaste.net/

SchnelleSchnalle: dann können alle hier dir helfen =)

mikasapikaa: https://codepaste.net/768gjg https://codepaste.net/768gjg

SchnelleSchnalle: am anfang der zeile beginnst du den string mit "

IgelchenM: var nick = user.getNick(); vor var message packen

mikasapikaa: ich hab nix geändert das ist das was ich ausm Netz habe :-D

SchnelleSchnalle: und dann beendest ihn mit ' das ist bestimmt auch nicht gut^^

mikasapikaa: deshlab hat es mich gewunder :D

00101010: var message = "Hallo " + user + ", willkommen im Channel. Du bist "+ user.getAge() +" Jahre alt.";

SchnelleSchnalle: var message = "Hallo " + user.getNick() + ", willkommen im Channel. Du bist "+ user.getAge() +" Jahre alt.";

IgelchenM: var message = "Hallo "+ Nick + ", willkommen im Channel. Du bist " + user.getAge() + " Jahre alt.";

IgelchenM:
.........var Nick = user.getNick();
.........var message = "Hallo "+ Nick + ", willkommen im Channel. Du bist " + user.getAge() + " Jahre alt.";

neugierig39m: thx dann sehe ich nun auch mein fehler

00101010: sollte doch auch ohne getNick() gehen oder?

IgelchenM: würde auch nur mit user gehen, doch user ist ein Object - ich persönlich machs immer lieber mit .getNick() ^^

00101010: sollte letztendlich wohl die selbe methode triggern :D

IgelchenM: so muss mal eben scrollen wo ich jetzt zu letzt war

SchnelleSchnalle: bekommt man dann die .toString?

IgelchenM: So, SchnelleSchnalle, Last-lion und Shadow54 - habt ihr Fragen zum Thema User Apps mitgebracht ?

Last-lion: IgelchenM gibt es die möglichkeit auf den Namen im userprofil zuzugeifen um ihn mit dem namen anzusprechen außer den nicknamen , beu der begrüßung

IgelchenM: nein diese möglichkeit gibt es nicht

Last-lion: das würde ich persöhnlicher finden

Last-lion: schade

SchnelleSchnalle: ich hab nur eine frage, und zwar hatte ich mal im gefragt ob die toplist befehle, die man erzeugen kann auch auf die whiteliste kommen (ich glaub das war im uservoice) und das wurde auch für akzeptabel befunden. gibt es das schon? mach ich was falsch? oder gibt es das bald? =)

IgelchenM: nicht jeder gibt seinen realnamen ein, oder teilt ihn mit allen

IgelchenM: da müsste erst ein Rechtemanagement her (ähnlich wie bei Facebook) wo User einstellen könnten, ob sie den Zugriff erlauben oder nicht :)

00101010: du könntest deine besucher beim betreten des channels fragen, ob sie dir ihren namen verraten, den in der persistence speichern und dann darauf zurückgreifen :)

SchnelleSchnalle: weil das wäre praktisch von der htmlUI die toplisten anzuzeigen

Svenja-14: Olli, gibt es denn die Möglichkeit auf die Spitznamen zuzugreifen wie hiermit ?

IgelchenM: antwort hatte ich eben geschrieben ^^

IgelchenM: es ist nicht möglich auf diese Daten zuzugreifen, da diese Daten nicht für alle sichtbar im W2 sind - dementsprechend müsste es erst ein Rechtemanagement geben, bei dem die User zustimmen, dass diese Daten genutzt werden dürfen. Dieser Vorschlag ist auch schon im Uservoice enthalten (seit gut nem Jahr) ^^

IgelchenM: wenn nicht sogar schon länger

IgelchenM: die einzige möglichkeit die es geben würde, wäre dass ihr die User bittet einen Namen einzutragen, wie sie bei euch begrüßt werden wollen

IgelchenM: Svenja-14, SchlechteOnkelz und denniscrazy - habt ihr Fragen mitgebracht?

Last-lion: hahaha, naja berüßt wird jeder user bei mir im channel mit oder ohne jenachdem ob er eins im profil hat oder nicht. *g*

Svenja-14: ich hab ne Frage, aber die stell ich dir gerne nachher privat.

denniscrazy: Ja ich hätte was x). Gibts die Möglichkeit die Platzierung in einer Topliste auszulesen? z. B. für Nachrichten wie XYZ hat soeben den 1./2./3. Platz erreicht.
.........Wenn ich das richtig gelesen hab, krieg ich zwar den Rangnamen raus bzw den Wert, aber nicht die Platzierung.

Maexxchen: Wenn das nicht direkt geht, kann man sich sowas sicher über Umwege basteln.

SchnelleSchnalle: dazu must du nen listener setzen, also eine funktion die ausgeführt wird wenn sich der rang ändert

IgelchenM: wenn du mit der UserPersistence arbeitest, sollte das möglich sein

IgelchenM: https://developer.knuddels.de/docs/classes/UserPersistenceNumbers.html#method_getRank https://developer.knuddels.de/docs/classes/UserPersistenceNumbers.html#method_getRank]

IgelchenM: wenn du allerdings eindeutige Ränge haben willst (z. B. nicht 1. 2. 2. 4. - sondern 1. 2. 3.) dann müsstest du auf getPosition ausweichen.

denniscrazy: ahhhh... ich hab bei den toplisten gesucht und natürlich nicht bei den persistenzen.... okay das liest sich schon so wie das glaub ich passen sollte, danke

IgelchenM: gern

IgelchenM: so, dann kommen wir zu den letzten beiden im Channel. Dominoday und Daviddergabber1990 - habt ihr heute Fragen für mich die User Apps betreffen?

SchnelleSchnalle: hast du mich überlesen igelchenM? :( (frage wegen dem whitelisten des von der app erzeugten toplist befehls)

IgelchenM: oh warte

IgelchenM: hab ich tatsächlich -scroll-

Daviddergabber1990: ne

Daviddergabber1990: habe ich heute nicht

IgelchenM: ich bin mir nun nicht ganz sicher, ob die auf der whitelist stehen oder nicht

IgelchenM: dauert nen kleinen Moment - ich teste das eben mal

SchlechteOnkelz: Nein keine Fragen. Wollte nur nochmal erwähnen dass der appserver momentan wieder bei tochterchannel die hooks und befehle teilweise nicht mehr lädt. Selbes Problem wie letztes Mal. Der appserver müsste dazu mal wieder neu gestartet werden.

Imo2014: Was gibt es für Strafen, für Mutwilliges DevServer gegen die Wand fahren ?

SchlechteOnkelz: War ja nicht mutwillig ...

SchlechteOnkelz: Die kann der Account gesperrt werden

SchlechteOnkelz: Dir

Imo2014: dachte nur beim LiveSystem

SchlechteOnkelz: Ach beim dev wenn es mutwillig ist

Imo2014: ahh, also keine MD5 Summen errechnen lassen.

IgelchenM: ich würds nicht rausfinden wollen

Pudding: Man kann den Server gegen die Wand fahren??

IgelchenM: ja das geht alles...

Imo2014: bestimmt

SchnelleSchnalle: hm also ich hab für mein erstes projekt damals massenweise a* und broadcast wegsuchen auf 1024x1024 karten serverseitig laufen lassen und das hat den nich gejuckt

SchnelleSchnalle: also da brauch es schon viel um den kaputt zu machen, da muss man entweder das mit absicht wollen oder irgendwie was falsch machen :>

SchnelleSchnalle: lol damals is nen halbes jahr her xD

Imo2014: mir ist nur mal aufgefallen, das die zu makanten uhrzeiten für 10 - 30 sekunden träge werden

IgelchenM: So, wer wollte wissen ob die Toplisten auf der whitelist stehen?

SchnelleSchnalle: ich ich ich

IgelchenM: Ist ja auch egal - sie sind auf der whitelist

SchnelleSchnalle: yeehaw

IgelchenM: gerade ausprobiert

Imo2014: Merkt man dan besonders in Knuddelonia, und kurz darauf bekommt man ne Werbemail

SchnelleSchnalle: apropros werbemails, leute is das euer ernst das nun der matratzensportler werbung für black james macht und so?

SchnelleSchnalle: hab mich schon im forum darüber ausgekotzt :> aber wollte es nochmal erwähnen hihi

IgelchenM: Wie bereits im Forum geschrieben steht, beide Channels gehören ein und dem selben Menschen, daher ist es nichts verbotenes mit beiden Nicks einen anzuschreiben. Da hilft leider nur eines - immer brav /silence nutzen

SchnelleSchnalle: ja das war auch eben eher ein appell an den anstand :D

IgelchenM: So partyboy@wob - lieber spät als nie - oder wie? Hast du eine Frage mitgebracht?

Imo2014: ich hab noch eine.

IgelchenM: ja?

Imo2014: Kann man bei dem Devserver das Passwort vom Bot setzten, wenn man einen neu erstellt. Bzw. kann man einen Recyclen bei dem man kein Passwort gesetzt hatte?

IgelchenM: Ich weiss nun nicht mit sicherheit ob PW vergessen auf dem Dev-Server funktioniert.

IgelchenM: als E-mail wird ja die, des AppDeveloper gesetzt...

Imo2014: hmm, man hatte ja auch keine email und so hinterlegt

Imo2014: zur Zeit werden ja nur Daten für den Entwickler erzeugt, und keine für den Bot mehr.

partyboy@wob: ne habe keine mitgebracht ....

partyboy@wob: :)

IgelchenM: mh, dann wirst du das PW nur ändern können in dem du es dir notierst, dich mit dem Nick einloggst und änderst

Imo2014: Wenn man mal ne App testet, muss man immer nen neuen User anlegen, es sei denn, man hatte das Glück, das man nen Bot angelegt bekommen hatte

00101010: ich bin verwirrt, ich musste da noch nie ein passwort eingeben oder so

00101010: immer nur nick und fertig

IgelchenM: wenn ein AppBot angelegt wird, teilt James privat das PW mit

Surprise77: ich hätte da doch noch eine Frage ^^

00101010: oh okay :D

IgelchenM: ja?

Imo2014: ahhh okay, besten Dank

Surprise77: also ich hab ne Bank für Knuddel ... nun wollte ich mir die wieder auszahlen lassen weil ich den Bot ändern will ... also nen anderen Namen

Surprise77: oder kann ich den Botnamen direkt ändern?

Imo2014: Surprise77 wie ist dein channelname ?

Surprise77: die frechen mollis

IgelchenM: die knuddel sind immer an den Bot gebunden...

Surprise77: ja das dacht ich mir eh auch schon :-)

IgelchenM: du musst dir eine Funktion bauen, die es dir ermöglicht die knuddel auszuzahlen. Denke aber daran, dass Steuern anfallen!

IgelchenM: warte nen moment

Surprise77: ja das is das Problem ... kann die Dateien da ja eben nich einsehen

IgelchenM: achso

Surprise77: ah ich habs ...

IgelchenM: So, wenn es weiter keine Fragen mehr gibt - würde ich für heute Schluß machen

IgelchenM: In diesem Sinne, danke fürs vorbei schauen und den Fragen - wir sehenuns dann nächste Woche Montag wieder!