I have two suggestions. 1. It would be great if you explain the entire process first and relations between all model before starting the code. 2. You can also add WebRTC examples to manage audio chat, video chat, and file sharing in this playlist.
+1 even if it is at last it's also fine. It would be helpful if you explain how everything works by going file by file and explaining it all at the end of the video
Very well organized content. I every time watch your videos and develop the same side by side to understand the concepts. Thanks man. Because of your videos I am up t date on android development APIs. God bless you.
for people who does not know how to setup the initially required files of gradle and kotlin dependency from ktor.. 1. first install git 2. then put that git executable or script path to the environment variable in the system variable (not local) 3. add the file path of intellij's executable too into the system's environment variable 4. enter the file path that we are interested to create the project in the cmd 5. clone the repository by writing git clone 6. open the project by writing ```idea64 .``` `.` means the relative path to current working directory 7. you are good to follow the tutorial
Can someone explain the send message function, I think there are unnecessary objects being created in the loop 29:45.. The loop parameter is only used in the last line when message is broadcasted to all the members and that should be the only line inside the loop and others should be outside the loop like creating the Message object and calling the database function insertMessage.
Phillip hi! Need help on the task @44 min with Koin's mainModule installation, after the curlybracers appear questionMarks instead of "this koinApp". Doing exactly the same. How would you solve this today with 2.0 ktor version + koin new version? 1.6.7 ver worked but still, how would you do this with ktor of 2.0 version? Best regards!
The hard part of ktor, which I'm trying to figure out, is how to use the base library to do normal socket stuff, with multithreaded support. Unfortunately all the tutorials out there are assuming websockets, but for websockets, they have a way more convenient framework. :(
@20:50 i was stuck thinking what is that `*` means in the parameter of function descendingSort() defined by mongodb package..it turns out the property of `KProperty` class is of type varargs in which case it is a Generic type but at the same time it is a varargs so basically it is like void pointer in C++
@25:39 i think for the `onJoin()` method we can create the function to take `Member` instance/object as parameter to the function because we already define it in the .room folder
@@patrik956 you have an open web socket just. On app side observe if user is writing on key board then just send web socket message to server and then broadcast to all the members.
Hey... Great tutorials as always. :) I followed along and I am getting an error(MissingApplicationFeatureException: Application feature Sessions is not installed) in chatSocket when getting the Chat Session. I tried figuring out the error but wasn't successful. Anything I might have missed here ?
i tried the exact same thing but i cannot get it to run the server I am getting the following error " Supertypes of the following classes cannot be resolved. Please make sure you have the required dependencies in the classpath: class org.koin.ktor.ext.Koin.Feature, unresolved supertypes: io.ktor.application.ApplicationFeature Adding -Xextended-compiler-checks argument might provide additional information. " and " Type mismatch: inferred type is Koin.Feature but Plugin was expected " in the Application.kt implementation on the install method. Please help!
I am getting issue on intelliJ when I create a project from Ktor Project Generator and open the project using intelliJ then it will install jvm dependency i.e websockets-jvm and not websockets. this is confusing.
Video's like this are what makes your channel awesome.
Thanks a lot man!
Didn't watched the full video but very excited. Thanks Phillip for awesome tutorial
I have two suggestions.
1. It would be great if you explain the entire process first and relations between all model before starting the code.
2. You can also add WebRTC examples to manage audio chat, video chat, and file sharing in this playlist.
+1 even if it is at last it's also fine. It would be helpful if you explain how everything works by going file by file and explaining it all at the end of the video
Very well organized content. I every time watch your videos and develop the same side by side to understand the concepts. Thanks man. Because of your videos I am up t date on android development APIs. God bless you.
Thanks!
Just finished your other Ktor videos, great timing, thanks
Philipp, man, you are awasome. The community will remember you.
Another awesome playlist, thank you Philipp. And keep going this way
Thanks for the video. Great work as always
Ktor tutorials are my favorite right now
You are a living legend - keep up the great work =)
for people who does not know how to setup the initially required files of gradle and kotlin dependency from ktor..
1. first install git
2. then put that git executable or script path to the environment variable in the system variable (not local)
3. add the file path of intellij's executable too into the system's environment variable
4. enter the file path that we are interested to create the project in the cmd
5. clone the repository by writing git clone
6. open the project by writing ```idea64 .``` `.` means the relative path to current working directory
7. you are good to follow the tutorial
Thank you for this tutorial 😊
Very nice! Waiting for the app part.
Nice class!! Till here working
This is awesome, thanks.
This gonna be lit🔥🔥🔥🔥
For swap line quickly -> ctrl+shift+up or down arrow
Another quality content!
Thanks, I was looking for this.
Its very awesome tutorial , so exciting
Can someone explain the send message function, I think there are unnecessary objects being created in the loop 29:45.. The loop parameter is only used in the last line when message is broadcasted to all the members and that should be the only line inside the loop and others should be outside the loop like creating the Message object and calling the database function insertMessage.
I was thinking the exact same thing. Did you try it without looping other objects and just the send function to broadcast message to all members?
Really enjoy your videos
Thank you ❤️
Which product do you use in hair?
Phillip hi! Need help on the task @44 min with Koin's mainModule installation, after the curlybracers appear questionMarks instead of "this koinApp". Doing exactly the same. How would you solve this today with 2.0 ktor version + koin new version?
1.6.7 ver worked but still, how would you do this with ktor of 2.0 version? Best regards!
Koin version 3.2.2 is now compatible with Ktor version 2.2.2
@@anirudh7137 thank you and Gal for the help. I was stuck on this all day yesterday.
The hard part of ktor, which I'm trying to figure out, is how to use the base library to do normal socket stuff, with multithreaded support.
Unfortunately all the tutorials out there are assuming websockets, but for websockets, they have a way more convenient framework. :(
What program u use for record this videos with this effect of zoom?
Thank you a lot!! Cool
@20:50 i was stuck thinking what is that `*` means in the parameter of function descendingSort() defined by mongodb package..it turns out the property of `KProperty` class is of type varargs in which case it is a Generic type but at the same time it is a varargs so basically it is like void pointer in C++
@25:39 i think for the `onJoin()` method we can create the function to take `Member` instance/object as parameter to the function because we already define it in the .room folder
but then data class need to be supplied with at least one argument..so this will only work with one instance of `Member` but not all instances
maybe we can supply the constructor with default value..initialized it with few bytes of character
`WebSocketSession` is an `interface` so we cannot initialise it in the `Member` constructor
@26:33 very weird syntax to pass the value from function parameter to a class's backing field
Hey not sure but is there any particular reason using mongo, why not using room instead
Are you implementing pagination in this app?
Suppose if there are more then two users will all will be chatting in the same room.? Can anybody explain.
Great video
Thank you!🥰
Greate series!
I'm getting connection closed on piesocket when running the project cloned from github. How do I debug this?
I am not able to understand the line intercept(ApplicationCallPipeline.Features), Can anyone explain it ??
Just great!
Do i have to create database in mongo myself or it will create itself when running for the first time.
Hey... Great tutorials as always.
I followed along and I am getting an error(Session data for `Guest` was not registered)
Android Studio said that Ktor is Depricated :( ?????
thank you for this
I would like you to implement "is writing" feature
that's a good practice for you at home
@@PhilippLackner I dont have idea how to do this you know
@@patrik956 you have an open web socket just. On app side observe if user is writing on key board then just send web socket message to server and then broadcast to all the members.
very awesome video
thanks!
Hey... Great tutorials as always. :)
I followed along and I am getting an error(MissingApplicationFeatureException: Application feature Sessions is not installed) in chatSocket when getting the Chat Session. I tried figuring out the error but wasn't successful. Anything I might have missed here ?
Looks like you need to install the sessions feature
@@PhilippLackner Got the issue. Thank you for your response.
Nice video...hope you remember me
Okay I did not see this coming at all, like seriously at freaking all
why not send messages via 'post' and use the websocket only to receive them?
What's the point? You end up having a slower request while still needing the socket
Can I publish it on play store?
I have a question for you. Have you ever spent money to learn mobile development? Or Do you learn it on the internet
Sure I did
i tried the exact same thing but i cannot get it to run the server I am getting the following error
" Supertypes of the following classes cannot be resolved. Please make sure you have the required dependencies in the classpath:
class org.koin.ktor.ext.Koin.Feature, unresolved supertypes: io.ktor.application.ApplicationFeature
Adding -Xextended-compiler-checks argument might provide additional information. "
and
" Type mismatch: inferred type is Koin.Feature but Plugin was expected "
in the Application.kt implementation on the install method. Please help!
same err bro, any solution?
Can you please make it with firebase toooo.... please 🥺
Part 1 , 52min 👀🙃
Nice video, thank's
Tutorial idea, in app subscription in android. Paid version of app vs free version
Can you Please make sample OTT app.
there is not even a single proper channel on Android development , please please bring more projects
Not even mine? 🥺
@@PhilippLackner no no i don't mean that 😄,I mean there is not any good channel on Android development like your
and please bring more projects like howbto creat quiz app,vpn app etc...
but it IS awesome
trying ti register for hostinger burt got server error .....gg
i love you
This app allows you to send only text and what to do if you want to send photos or gifs like in this video? ruclips.net/video/LWbzaYR5TGE/видео.html
I am good fan of yours.
Disappointed by this video.
Very less explaination.
what wasn't clear?
messageDataSource.insertMessage you have to do it outside the forEach otherwise you insert it in the DB as many times as there are members.
thanks alot, this videobetter then tectok game websocket videobecuse you explain every think thanks alog
I am getting issue on intelliJ when I create a project from Ktor Project Generator and open the project using intelliJ then it will install jvm dependency i.e websockets-jvm and not websockets. this is confusing.