2009-09-22 12 views
8

Próbuję zbudować aplikację szyn, która jest po prostu edytorem tekstu (z dodatkowymi funkcjami, których nie mogę znaleźć nigdzie indziej - dlatego właśnie ją buduję)Jak przeprowadzić bezpośrednią edycję na żywo?

Jedną z podstawowych funkcji jest live współbieżna edycja lub edytowanie współdzielone w czasie rzeczywistym (bez względu na to, jak chcesz to nazwać).

Do tej pory skonfigurowałem witrynę z wtyczką o nazwie Juggernaut. To daje mi możliwość wysyłania, zarówno z klienta, jak i serwera, dowolnej Javascript, który chcę do każdego innego klienta. Kiedy więc ktoś coś wpisze, mogę wysłać to, co ta osoba wpisała każdemu innemu klientowi, bez konieczności odpytywania serwera przez innych klientów.

Problem, który mam, sprowadza się do mnie, nie wiedząc, jaki algorytm użyć do rozwiązywania konfliktów i robić to w najlepszy możliwy sposób. Czytałem trochę na temat Operational Transformation, ale po prostu nie wiem, jak sensownie zaimplementować to za pomocą rozwiązania JavaScript/Rails, które mam teraz.

Chcę coś takiego jak OT, ale nie wiem, jak go wdrożyć i nie wiem od czego zacząć. Każda pomoc w implementacji tego byłaby dla mnie bardzo szczęśliwa!

+0

Interesujący problem z perspektywy użyteczności ... – RedFilter

Odpowiedz

4

Spójrz na MobWrite

+0

Nie widziałem tego, ponieważ rozumiem, że Bespin używa MobWrite, więc na pewno się temu przyjrzę! – Fredrik

4

myślę, że Google ma (lub wkrótce zwolnić), logikę OT fali jako open source.

Być może sprawdź projekt Open Source Wave Protocol.

0

Czy widziałeś Bespin Mozilli? Mam na myśli inspirację - rozumiem, że używasz Railsów.

0

szukałem czegoś takiego i natknąłem się sharejs. Mam nadzieję że to pomoże.

Powiązane problemy