Sachverhalt:
Sachverhalt:
A. In den Jahren 1996 bis 1998 vertrat X._ (Kläger) als Rechtsanwalt Y._ und Z._ (Beklagte) in einem Zivilprozess. Die Beklagten waren in der Folge nicht bereit, das aus diesem Mandat vom Kläger geforderte Honorar zu bezahlen.
A. In den Jahren 1996 bis 1998 vertrat X._ (Kläger) als Rechtsanwalt Y._ und Z._ (Beklagte) in einem Zivilprozess. Die Beklagten waren in der Folge nicht bereit, das aus diesem Mandat vom Kläger geforderte Honorar zu bezahlen.
B. Am 10. November 1998 belangte der Kläger die Beklagten beim Bezirksgericht Meilen auf solidarische Zahlung von Fr. 51'342.45 nebst Zins. Mit Urteil vom 23. Dezember 2003 verpflichtete das Bezirksgericht die Beklagten solidarisch, dem Kläger Fr. 20'703.- nebst Zins zu bezahlen. Im Mehrbetrag wies es die Klage ab.
Dagegen erhoben sowohl der Kläger als auch die Beklagten kantonale Berufung. Das Obergericht des Kantons Zürich, II. Zivilkammer, verurteilte am 28. November 2006 die Beklagten solidarisch, dem Kläger Fr. 17'713.- nebst Zins zu bezahlen, und wies im Mehrbetrag die Klage ab.
Die gegen dieses Urteil vom Kläger erhobene Nichtigkeitsbeschwerde wies das Kassationsgericht des Kantons Zürich mit Zirkulationsbeschluss vom 20. Juli 2007 ab, soweit es darauf eintrat. Gegen diesen Beschluss wurde kein Rechtsmittel an das Bundesgericht ergriffen.
Die gegen dieses Urteil vom Kläger erhobene Nichtigkeitsbeschwerde wies das Kassationsgericht des Kantons Zürich mit Zirkulationsbeschluss vom 20. Juli 2007 ab, soweit es darauf eintrat. Gegen diesen Beschluss wurde kein Rechtsmittel an das Bundesgericht ergriffen.
C. Der Kläger beantragt mit eidgenössischer Berufung, das Urteil des Obergerichts vom 28. November 2006 aufzuheben. Berufung und Klage seien gutzuheissen und demzufolge seien die Beklagten solidarisch zu verpflichten, dem Kläger den Betrag von Fr. 51'342.45 zuzüglich Zins zu 5% ab dem 1. Januar 1997 zu bezahlen; die Sache sei zu neuer Entscheidung an die Vorinstanz zurückzuweisen.
Die Beklagten beantragen, die Berufung abzuweisen.

Das Bundesgericht zieht in Erwägung:
Das Bundesgericht zieht in Erwägung:
1. Das Bundesgesetz über das Bundesgericht vom 17. Juni 2005 (BGG; SR 173.110) ist am 1. Januar 2007 in Kraft getreten (AS 2006 1205, 1243). Das vorliegende Berufungsverfahren richtet sich noch nach dem OG, da der angefochtene Entscheid vor Inkrafttreten des BGG ergangen ist (<ref-law>).
1. Das Bundesgesetz über das Bundesgericht vom 17. Juni 2005 (BGG; SR 173.110) ist am 1. Januar 2007 in Kraft getreten (AS 2006 1205, 1243). Das vorliegende Berufungsverfahren richtet sich noch nach dem OG, da der angefochtene Entscheid vor Inkrafttreten des BGG ergangen ist (<ref-law>).
2. Die Vorinstanz wies zunächst die Berufung der Beklagten auf Grundlagenirrtum wegen verspäteter Geltendmachung (<ref-law>) zurück und ging somit von der Rechtsbeständigkeit des dem Kläger erteilten Auftrags aus. Auch verneinte sie eine Vertragsaufhebung nach <ref-law>. Da die Beklagten den ganzen Vertrag und der Kläger nur die Honorarabrede aufgehoben wissen wollten, fehle es an übereinstimmenden Willensäusserungen. Sodann verwarf die Vorinstanz den Einwand der Beklagten, der Vertrag sei schlecht erfüllt worden, und hielt fest, dem Kläger könne keine mangelnde Sorgfalt vorgeworfen werden.
Der Berechnung des dem Kläger für seine Bemühungen zustehenden Honorars legte die Vorinstanz die vom Bezirksgericht ermittelten und von den Parteien nicht angefochtenen Stunden zugrunde (für Leistungen des Klägers 29.9 Stunden, für Leistungen seines Mitarbeiters W._ als Substitut 5.53 Stunden resp. als Rechtsanwalt 21.8 Stunden). Die Behauptung des Klägers, die Parteien hätten für seine eigenen Leistungen einen Stundenansatz von Fr. 400.-- vereinbart, hielt die Vorinstanz für nicht erwiesen, weshalb sie den von den Beklagten anerkannten Ansatz von Fr. 300.-- heranzog. Für die Leistungen des Mitarbeiters W._ blieb es mangels Bestreitung beim Ansatz von Fr. 150.-- für die Zeit vor resp. Fr. 300.-- für die Zeit nach Erwerb des Anwaltspatents. Zusammen mit den Barauslagen gelangte die Vorinstanz im Resultat zu einem geschuldeten Betrag von Fr. 17'713.--.
Der Berechnung des dem Kläger für seine Bemühungen zustehenden Honorars legte die Vorinstanz die vom Bezirksgericht ermittelten und von den Parteien nicht angefochtenen Stunden zugrunde (für Leistungen des Klägers 29.9 Stunden, für Leistungen seines Mitarbeiters W._ als Substitut 5.53 Stunden resp. als Rechtsanwalt 21.8 Stunden). Die Behauptung des Klägers, die Parteien hätten für seine eigenen Leistungen einen Stundenansatz von Fr. 400.-- vereinbart, hielt die Vorinstanz für nicht erwiesen, weshalb sie den von den Beklagten anerkannten Ansatz von Fr. 300.-- heranzog. Für die Leistungen des Mitarbeiters W._ blieb es mangels Bestreitung beim Ansatz von Fr. 150.-- für die Zeit vor resp. Fr. 300.-- für die Zeit nach Erwerb des Anwaltspatents. Zusammen mit den Barauslagen gelangte die Vorinstanz im Resultat zu einem geschuldeten Betrag von Fr. 17'713.--.
3. Der Kläger rügt eine Verletzung von <ref-law>. Er macht geltend, die Vorinstanz habe verkannt, dass das Fristversäumnis ein blosses Einrederecht des Klägers darstelle und darum keine Rolle spiele, weil der Kläger in seiner Zweitberufungsbegründung/Erstberufungsantwort vom 26. Juni 2006 die Irrtumsanfechtung und die daraus resultierende Ungültigkeit der Honorarvereinbarung anerkannt habe. Indem die Vorinstanz trotz fehlender entsprechender Einrede des Klägers die von den Beklagten geltend gemachte Berufung auf Grundlagenirrtum als verspätet qualifiziert habe, habe sie <ref-law> unrichtig angewendet.
Dem kann nicht gefolgt werden. Denn bei der Anfechtungsfrist von einem Jahr nach <ref-law> handelt es sich nicht um eine Verjährungsfrist, die der Richter nur auf Einrede hin berücksichtigen dürfte (<ref-law>), sondern um eine Verwirkungsfrist (<ref-ruling> E. 2b S. 141). Die Vorinstanz hat mithin <ref-law> nicht verletzt, indem sie berücksichtigte, dass die Berufung der Beklagten auf Grundlagenirrtum verspätet erfolgt war.
Dem kann nicht gefolgt werden. Denn bei der Anfechtungsfrist von einem Jahr nach <ref-law> handelt es sich nicht um eine Verjährungsfrist, die der Richter nur auf Einrede hin berücksichtigen dürfte (<ref-law>), sondern um eine Verwirkungsfrist (<ref-ruling> E. 2b S. 141). Die Vorinstanz hat mithin <ref-law> nicht verletzt, indem sie berücksichtigte, dass die Berufung der Beklagten auf Grundlagenirrtum verspätet erfolgt war.
4. In Bezug auf die Verneinung eines Aufhebungsvertrags (<ref-law>) macht der Kläger geltend, das angefochtene Urteil beruhe auf einer falschen Auslegung seiner Willenserklärung (Anerkennung des von den Beklagten geltend gemachten Grundlagenirrtums bzw. Ungültigkeit der Parteivereinbarung) und damit auf einer unrichtigen Anwendung von <ref-law>.
Die Vorinstanz stellte fest, es fehle an übereinstimmenden Willenserklärungen zur Vertragsaufhebung. Diese tatsächliche Feststellung beruht auf Beweiswürdigung, die vorbehältlich der Ausnahmen von Art. 63 Abs. 2 und Art. 64 OG der bundesgerichtlichen Überprüfung im Berufungsverfahren entzogen ist (<ref-ruling> E. 2.2 S. 106, 136 E. 1.4 S. 140; <ref-ruling> E. 2c S. 547). Der Kläger erhebt keine substantiierte Sachverhaltsrüge, indem er lediglich die Ausführungen in seinen Rechtsschriften vom 26. Juni 2006 bzw. vom 30. Oktober 2006 erwähnt und darlegt, wie diese seiner Ansicht nach aufzufassen seien. Auf diese Rüge kann somit nicht eingetreten werden.
Die Vorinstanz stellte fest, es fehle an übereinstimmenden Willenserklärungen zur Vertragsaufhebung. Diese tatsächliche Feststellung beruht auf Beweiswürdigung, die vorbehältlich der Ausnahmen von Art. 63 Abs. 2 und Art. 64 OG der bundesgerichtlichen Überprüfung im Berufungsverfahren entzogen ist (<ref-ruling> E. 2.2 S. 106, 136 E. 1.4 S. 140; <ref-ruling> E. 2c S. 547). Der Kläger erhebt keine substantiierte Sachverhaltsrüge, indem er lediglich die Ausführungen in seinen Rechtsschriften vom 26. Juni 2006 bzw. vom 30. Oktober 2006 erwähnt und darlegt, wie diese seiner Ansicht nach aufzufassen seien. Auf diese Rüge kann somit nicht eingetreten werden.
5. Nicht nachvollziehbar ist der weitere Einwand des Klägers, die Vorinstanz habe "die Rechtsfolgen der Ungültigkeit nach <ref-law> zwar richtig erkannt, aber falsch angewendet." Mangels gültiger Parteivereinbarung über die Höhe des Anwaltshonorars sei das Honorar auf amtlicher Basis nach der kantonalen Verordnung des Obergerichts des Kantons Zürich über die Anwaltsgebühren vom 10. Juni 1987 zu berechnen.
Die Vorinstanz hielt in Widerlegung der gegenteiligen Auffassung der Beklagten zutreffend fest, dass bei erfolgreicher Irrtumsanfechtung die Rückabwicklung des Mandats im Sinne einer Kündigung ex nunc zu erfolgen hätte (vgl. <ref-ruling> E. 7 S. 327 ff.). Da die Vorinstanz aber gerade keine rechtzeitige Irrtumsanfechtung annahm, brauchte sie auch nicht eine Rückabwicklung vorzunehmen. Eine falsche Anwendung der Folgen einer erfolgreichen Irrtumsanfechtung, wie sie der Kläger geltend macht, fällt damit von vornherein ausser Betracht.
Die Vorinstanz hielt in Widerlegung der gegenteiligen Auffassung der Beklagten zutreffend fest, dass bei erfolgreicher Irrtumsanfechtung die Rückabwicklung des Mandats im Sinne einer Kündigung ex nunc zu erfolgen hätte (vgl. <ref-ruling> E. 7 S. 327 ff.). Da die Vorinstanz aber gerade keine rechtzeitige Irrtumsanfechtung annahm, brauchte sie auch nicht eine Rückabwicklung vorzunehmen. Eine falsche Anwendung der Folgen einer erfolgreichen Irrtumsanfechtung, wie sie der Kläger geltend macht, fällt damit von vornherein ausser Betracht.
6. Schliesslich rügt der Kläger einen Verstoss gegen <ref-law>, weil die Vorinstanz erwog, mangels Beweises eines vereinbarten Stundenansatzes von Fr. 400.-- sei der von den Beklagten anerkannte Ansatz von Fr. 300.-- massgebend. Der Kläger meint, die Vorinstanz hätte auf Dissens bezüglich Höhe des pro Stunde geschuldeten Anwaltshonorars schliessen und das Honorar gestützt auf die kantonale Verordnung des Obergerichts des Kantons Zürich über die Anwaltsgebühren vom 10. Juni 1987 berechnen müssen.
Diese Ausführungen zeigen keine Bundesrechtsverletzung auf. Die Vorinstanz hielt als Beweisergebnis fest, der Beweis für den vom Kläger behaupteten Stundenansatz von Fr. 400.-- sei nicht geführt worden und demzufolge gelange zuungunsten des beweisbelasteten Klägers der von den Beklagten zugestandene Ansatz von Fr. 300.-- zur Anwendung. Dies ist bundesrechtlich nicht zu beanstanden. Soweit der Kläger - richtig besehen - die Beweiswürdigung rügen will, kann er damit im Berufungsverfahren nicht gehört werden (<ref-ruling> E. 2.2 S. 106, 136 E. 1.4 S. 140; <ref-ruling> E. 2c S. 547).
Diese Ausführungen zeigen keine Bundesrechtsverletzung auf. Die Vorinstanz hielt als Beweisergebnis fest, der Beweis für den vom Kläger behaupteten Stundenansatz von Fr. 400.-- sei nicht geführt worden und demzufolge gelange zuungunsten des beweisbelasteten Klägers der von den Beklagten zugestandene Ansatz von Fr. 300.-- zur Anwendung. Dies ist bundesrechtlich nicht zu beanstanden. Soweit der Kläger - richtig besehen - die Beweiswürdigung rügen will, kann er damit im Berufungsverfahren nicht gehört werden (<ref-ruling> E. 2.2 S. 106, 136 E. 1.4 S. 140; <ref-ruling> E. 2c S. 547).
7. Die Berufung ist abzuweisen, soweit darauf eingetreten werden kann. Bei diesem Ausgang des Verfahrens wird der Kläger kosten- und entschädigungspflichtig (Art. 156 Abs.1 und Art. 159 Abs. 2 OG).

Demnach erkennt das Bundesgericht:
Demnach erkennt das Bundesgericht:
1. Die Berufung wird abgewiesen, soweit darauf einzutreten ist.
1. Die Berufung wird abgewiesen, soweit darauf einzutreten ist.
2. Die Gerichtsgebühr von Fr. 2'000.-- wird dem Kläger auferlegt.
2. Die Gerichtsgebühr von Fr. 2'000.-- wird dem Kläger auferlegt.
3. Der Kläger hat die Beklagten für das bundesgerichtliche Verfahren mit Fr. 2'500.-- zu entschädigen.
3. Der Kläger hat die Beklagten für das bundesgerichtliche Verfahren mit Fr. 2'500.-- zu entschädigen.
4. Dieses Urteil wird den Parteien und dem Obergericht des Kantons Zürich, II. Zivilkammer, schriftlich mitgeteilt.
Lausanne, 11. Oktober 2007
Im Namen der I. zivilrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Präsident: Die Gerichtsschreiberin: